Operation method of host controlling storage device and operation method of storage system

By preventing the processing of the second exception event before the exception event check cycle passes, the problem of performance degradation in unnecessary operations in existing storage systems is solved, and more efficient exception event management is achieved.

CN119645293APending Publication Date: 2025-03-18SAMSUNG ELECTRONICS CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202410580628.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-09-15
Filing Date
2024-05-11
Publication Date
2025-03-18

AI Technical Summary

Technical Problem

Existing storage systems may perform unnecessary operations when handling exception events, resulting in poor performance.

Method used

By receiving the second response UPIU before the exception event check cycle passes, the host blocks processing of the second exception event, thereby reducing unnecessary operations.

Benefits of technology

Effectively reduces the system overhead caused by handling exception events and improves the performance of the storage system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119645293A_ABST
    Figure CN119645293A_ABST
Patent Text Reader

Abstract

An operation method of a host configured to control a storage device includes: receiving a first response universal flash memory (UFS) protocol information unit (UPIU) from the storage device, the first response UPIU including first event occurrence information indicating an occurrence of a first abnormal event; receiving a second response UPIU from the storage device before the anomalous event check cycle has elapsed, the second response including second event occurrence information indicating an occurrence of a second anomalous event; and blocking processing of the second anomalous event based on the occurrence of the second anomalous event before the anomalous event check period has elapsed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the priority of Korean Patent Application No. 10-2023-0123398 filed in the Korean Intellectual Property Office on September 15, 2023, the disclosure of which is incorporated herein by reference in its entirety. Technical Field

[0003] The present disclosure relates generally to semiconductor memories, and more particularly, to an operating method of a host configured to control a memory device and an operating method of a memory system. Background Art

[0004] Semiconductor memories may be classified as volatile memories, which may lose data stored therein when power is turned off, such as, but not limited to, static random access memory (SRAM), dynamic random access memory (DRAM), etc. Alternatively or additionally, semiconductor memories may be classified as non-volatile memories, which may retain data stored therein even when power is turned off, such as, but not limited to, flash memory, phase change random access memory (PRAM), magnetic random access memory (MRAM), resistive random access memory (RRAM), and ferroelectric random access memory (FRAM), etc.

[0005] Flash memory can be used as a high-capacity storage medium. Storage devices can refer to devices that can store data under the control of a host device, such as but not limited to computers, smart phones, smart tablets, etc. Storage devices can include devices that can store data on a disk, such as but not limited to a hard disk drive (HDD). Alternatively or additionally, storage devices can include devices that can store data in a semiconductor memory (e.g., a non-volatile memory), such as but not limited to a solid-state drive (SSD), a memory card, etc.

[0006] As semiconductor manufacturing technology develops, the size of content used in storage devices and host devices of storage devices may be increasing. Therefore, for example, an abnormal event may occur due to excessive temperature rise in the storage device. Therefore, a storage system that can effectively manage abnormal events is needed. Summary of the invention

[0007] One or more example embodiments of the present disclosure provide an operating method of a host and an operating method of a storage system having improved performance when compared to a related storage system.

[0008] According to aspects of the present disclosure, an operating method of a host configured to control a storage device includes: receiving a first response Universal Flash Storage (UFS) protocol information unit (UPIU) from the storage device, the first response UPIU including first event occurrence information indicating the occurrence of a first abnormal event; before an abnormal event check cycle passes, receiving a second response UPIU from the storage device, the second response including second event occurrence information indicating the occurrence of a second abnormal event; and preventing processing of the second abnormal event based on the occurrence of the second abnormal event before the abnormal event check cycle passes.

[0009] According to aspects of the present disclosure, a method for operating a storage system includes: a host of the storage system sends a first command UPIU to a storage device of the storage system; based on the first command UPIU, the storage device sends a first response UPIU corresponding to the first command UPIU and including information indicating the occurrence of a first abnormal event to the host; the host sends a second command UPIU to the storage device; based on the second command UPIU, the storage device sends a second response UPIU corresponding to the second command UPIU and including information indicating the occurrence of a second abnormal event to the host; and the host prevents processing of the occurrence of the second abnormal event based on that an abnormal event check period has not passed.

[0010] According to aspects of the present disclosure, an operating method of a UFS host configured to control a UFS device includes: confirming an abnormal event check cycle; receiving a first response UPIU from the UFS device, the first response UPIU including information indicating the occurrence of a first abnormal event and information indicating the type of the first abnormal event; checking the occurrence of the first abnormal event and the type of the first abnormal event based on the first response UPIU; receiving a second response UPIU from the UFS device before the abnormal event check cycle passes, the second response UPIU including information indicating the occurrence of a second abnormal event and information indicating the type of the second abnormal event; and preventing processing of the second abnormal event based on the occurrence of the second abnormal event before the abnormal event check cycle passes.

[0011] Additional aspects may be set forth in part in the description which follows and, in part, may be obvious from the description, and / or may be learned by practice of the presented embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The above and other aspects, features and advantages of certain embodiments of the present disclosure may be more apparent from the following description in conjunction with the accompanying drawings, in which:

[0013] Figure 1 is a block diagram illustrating a storage system according to an embodiment;

[0014] Figure 2 It is a diagram illustrating the Figure 1 A flowchart of an example of the operation of a host;

[0015] Figure 3 is a diagram illustrating a response UPIU according to an embodiment;

[0016] Figure 4 is a diagram depicting attribute fields of a storage device according to an embodiment;

[0017] Figure 5A and Figure 5B is a diagram illustrating a method according to an embodiment Figure 1 A diagram of a method for managing temperature of a storage device;

[0018] Fig. 6A It is a diagram illustrating the Figure 1 A diagram of the operation of a storage system;

[0019] Figure 6B is a diagram illustrating a method according to an embodiment Figure 1 FIG. 1 is a diagram of another example of operation of a storage system;

[0020] Fig. 7A and Figure 7B It is a diagram illustrating the Fig. 6A FIG. 10 is a diagram of operation S31 of FIG. 10;

[0021] Figure 8 is a diagram illustrating a method according to an embodiment Figure 1 FIG. 1 is a diagram of an example of operation of a host;

[0022] Fig.9A and Fig. 9B It is a diagram illustrating the Figure 1 A diagram of the operation of the host;

[0023] Fig. 10A is a diagram illustrating a method according to an embodiment Figure 1 FIG. 1 is a diagram of another example of operation of a storage system;

[0024] Fig. 10B It is a diagram illustrating the Figure 1 FIG. 1 is a diagram of another example of operation of a storage system;

[0025] Fig.11 is a diagram illustrating an embodiment of the present invention in reference to Fig. 10A and Fig. 10B A diagram of the response UPIU used in the described operation;

[0026] Fig.12 It is a diagram illustrating the Figure 1 A diagram of the method of operating the host;

[0027] Fig.13 is a diagram illustrating a method according to an embodiment Fig.12 FIG. 10 is a diagram of operation S330 ;

[0028] Fig.14 It is a diagram illustrating the Fig.12 FIG. 10 is a diagram of operation S360 ;

[0029] Fig.15 is a diagram illustrating a UFS system according to an embodiment; and

[0030] FIG. 16A to FIG. 16C is a diagram depicting a form factor of a UFS card according to an embodiment. DETAILED DESCRIPTION

[0031] The following description with reference to the accompanying drawings is provided to assist in a comprehensive understanding of the embodiments of the present disclosure as defined by the claims and their equivalents. Various specific details are included to assist in understanding, but these details are considered to be exemplary only. Therefore, it will be appreciated by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. In addition, descriptions of well-known functions and structures have been omitted for clarity and brevity.

[0032] In the description of the accompanying drawings, similar reference numerals may be used to refer to similar or related elements. It should be understood that the singular form of a noun corresponding to an item may include one or more things, unless the relevant context clearly indicates otherwise. As used herein, each of the phrases such as "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C" and "at least one of A, B or C" may include any one or all possible combinations of the items listed together in a corresponding phrase. As used herein, terms such as "1st" and "2nd" or "first" and "second" may be used to simply distinguish the corresponding component from another component without limiting other aspects of the component (e.g., importance or order). It should be understood that if an element (e.g., a first element) is referred to as being coupled to, coupled to, connected to or connected to another element (e.g., a second element), with or without the term "operably" or "communicatively", this means that the element may be coupled to another element directly (e.g., wired), wirelessly or via a third element.

[0033] Throughout this disclosure, references to "one embodiment," "an embodiment," and "an example embodiment," or similar language may indicate that a particular feature, structure, or characteristic described in conjunction with the indicated embodiment is included in at least one embodiment of the present solution. Thus, the phrases "in one embodiment," "in an embodiment," and "in an example embodiment," and similar language throughout this disclosure may, but do not necessarily, all refer to the same embodiment. The embodiments described herein are example embodiments, and thus, the disclosure is not limited thereto, and may be implemented in various other forms.

[0034] It should be understood that the specific order or hierarchy of blocks in the disclosed process / flowchart is an illustration of an exemplary method. Based on design preferences, it is understood that the specific order or hierarchy of blocks in the process / flowchart can be rearranged. In addition, some blocks can be combined or omitted. The appended claims present the elements of various blocks in a sample order and are not meant to be limited to the specific order or hierarchy presented.

[0035] As shown in the accompanying drawings, the embodiments of the present invention may be described and illustrated in terms of blocks that implement one or more functions described. These blocks may be referred to herein as units or modules, etc., or by names such as devices, logic, circuits, controllers, counters, comparators, generators, converters, etc., and may be physically implemented by analog and / or digital circuits, including logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, etc.

[0036] In this disclosure, the terms "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more". Where only one item is intended, the term "a" or similar language is used. For example, the term "processor" may refer to a single processor or to multiple processors. When a processor is described as performing an operation and the processor is referred to as performing additional operations, the multiple operations may be performed by a single processor or a combination of any one or more of the multiple processors.

[0037] According to the conventional Universal Flash Storage (UFS) standard, the UFS host may receive a response UFS protocol information unit (UPIU) from the UFS device as a response to the command UPIU. A specific field (e.g., a device information field) of the response UPIU may include information about whether an abnormal event has occurred in the UFS device. Whenever the UFS host receives a response UPIU, the UFS host may check a specific field (e.g., a device information field) of the response UPIU, and may determine whether an abnormal event has occurred in the UFS device. When the UFS host determines that an abnormal event has occurred, the UFS host may send a query request UPIU to the UFS device for checking the type of the abnormal event.

[0038] For example, the UFS host may repeatedly receive a response UPIU from the UFS device, and the response UPIU may provide a notification of the occurrence of the same abnormal event. In this case, the UFS host may perform an operation for independently handling the response UPIU regarding the abnormal event. However, the operation for handling the response UPIU may include unnecessary operations. Due to the unnecessary operations, the overhead caused by handling the abnormal event may increase. As a result, the performance of the UFS system may be reduced.

[0039] According to an embodiment of the present disclosure, when the abnormal event check cycle has not passed at the time point of receiving the response UPIU, the UFS host may not be sure whether the abnormal event has occurred. Therefore, compared with the related UFS system, unnecessary operations performed during the handling of the response UPIU can be minimized. The UFS host can check the abnormal event check cycle through the abnormal event check cycle (e.g., "wExceptionEventCheckCycle") field among the attribute fields of the UFS device. Therefore, a UFS system with potentially improved performance can be provided.

[0040] Hereinafter, various embodiments of the present disclosure are described with reference to the accompanying drawings.

[0041] Figure 1 is a block diagram illustrating a storage system according to an embodiment. Figure 1 , the storage system 1000 may include a host 1100 and a storage device 1200. In an embodiment, the storage system 1000 may include at least one of a computing system, such as but not limited to an ultra mobile personal computer (UMPC), a workstation, a netbook, a personal digital assistant (PDA), a portable computer, a web tablet, a wireless phone, a mobile phone, a smart phone, an e-book, a portable multimedia player (PMP), a portable game player, a navigation device, a black box, a digital camera, a digital multimedia broadcasting (DMB) player, a digital audio recorder, a digital audio player, a digital picture recorder, a digital picture player, a digital video recorder, a digital video player, etc.

[0042] The host 1100 may be configured to control the storage device 1200. For example, based on a given interface, the host 1100 may store data in the storage device 1200 and / or may read data stored in the storage device 1200. In an embodiment, the given interface may be and / or may include a UFS interface. However, the present disclosure is not limited thereto. For example, a given interface may include at least one of a variety of interfaces, such as, but not limited to, an Advanced Technology Attachment (ATA) interface, a Serial ATA (SATA) interface, an external SATA (e-SATA) interface, a Small Computer Small Form Factor Interface (SCSI) interface, a Serial Attached SCSI (SAS) interface, a Peripheral Component Interconnect (PCI) interface, a PCI Express (PCIe) interface, a Non-Volatile Memory (NVM) Express (NVMe) interface, an Institute of Electrical and Electronics Engineers (IEEE) 1394 (FireWire) interface, a Universal Serial Bus (USB) interface, a Secure Digital (SD) card interface, a MultiMediaCard (MMC) interface, an embedded MMC (eMMC) interface, a UFS interface, an embedded UFS (eUFS) interface, a Compact Flash (CF) card interface, a Compute eXpress Link (CXL) interface, and the like.

[0043] The storage device 1200 may operate under the control of the host 1100 . In an embodiment, the storage device 1200 may be and / or may include a UFS device that complies with the UFS interface standard. For example, the storage device 1200 may include a storage controller 1210 and a memory device 1220 .

[0044] The storage controller 1210 may operate under the control of the host 1100. For example, under the control of the host 1100, the storage controller 1210 may store data in the memory device 1220 (e.g., a write operation) and / or may provide the data stored in the memory device 1220 to the host 1100 (e.g., a read operation). In an embodiment, the storage controller 1210 may perform various management operations under the control of the host 1100. In an embodiment, the management operation may include an operation of setting various information of the storage device 1200, an operation of providing various information set in the storage device 1200 to the host 1100, and the like.

[0045] The memory device 1220 may operate under the control of the storage controller 1210. The memory device 1220 may be and / or may include a plurality of non-volatile memories. In an embodiment, the plurality of non-volatile memories included in the memory device 1220 may communicate with the storage controller 1210 through a plurality of channels, and may be formed in a variety of ways. In an embodiment, the memory device 1220 may be implemented based on a NAND flash memory. However, the present disclosure is not limited thereto. For example, the memory device 1220 may be implemented based on at least one of various non-volatile memory devices, such as but not limited to a phase change memory device (e.g., PRAM), a ferroelectric memory device (e.g., FRAM), a magnetic memory device (e.g., MRAM), a resistive memory device (e.g., RRAM), etc.

[0046] In an embodiment, the host 1100 and the storage device 1200 may communicate based on packets and / or messages having a UFS protocol information unit (UPIU) format. The UPIU may include various information defined by an interface (eg, UFS interface) between the host 1100 and the storage device 1200.

[0047] In an embodiment, the host 1100 may include an abnormal event (EE) manager 1110. The abnormal event manager 1110 may be configured to manage abnormal events caused in the storage device 1200. In an embodiment, the abnormal event manager 1110 may manage abnormal events based on an abnormal event check cycle (EECC).

[0048] An abnormal event may refer to an abnormal situation that may occur in the storage device 1200. For example, when the temperature of the storage device 1200 reaches an "excessively high temperature" (e.g., the storage device 1200 exceeds a predetermined threshold temperature), an abnormal event may occur in the storage device 1200. Abnormal events will be described in more detail below.

[0049] In an embodiment, the host 1100 may receive a response UPIU including event occurrence information indicating the occurrence of an abnormal event from the storage device 1200. In such an embodiment, if the EECC has not passed, the abnormal event manager 1110 may ignore the occurrence of the abnormal event. That is, when an abnormal event is received before the EECC has passed, the abnormal event manager 1110 may prevent the processing of the abnormal event. In an embodiment, information about the EECC may be stored in the storage controller 1210. In an embodiment, the storage controller 1210 may include a separate register configured to store information about the EECC. In an embodiment, the abnormal event manager 1110 may include a determination unit and a timer for determining whether the EECC has passed. However, the present disclosure is not limited thereto, and the abnormal event manager 1110 may utilize other methods or techniques to determine whether the EECC has passed.

[0050] In an embodiment, the host 1100 may receive a first response UPIU from the storage device 1200. The first response UPIU may include first event occurrence information indicating that a first abnormal event occurs in the storage device 1200.

[0051] In such an embodiment, the abnormal event manager 1110 may determine whether the first abnormal event occurs in the storage device 1200 through the first response UPIU. When the abnormal event manager 1110 determines through the first response UPIU that the first abnormal event occurs, the abnormal event manager 1110 may perform an operation of checking the type of the first abnormal event. That is, the abnormal event manager 1110 may perform an operation of checking the type of the first abnormal event in response to the first event occurrence information.

[0052] In an embodiment, the host 1100 may receive a second response UPIU from the storage device 1200. The second response UPIU may include second event occurrence information indicating that a second abnormal event occurs in the storage device 1200.

[0053] In such an embodiment, when the EECC has not passed, the abnormal event manager 1110 may not determine whether the second abnormal event occurs. In other words, the abnormal event manager 1110 may ignore (or prevent processing) the occurrence of the second abnormal event.

[0054] For example, the host 1100 may receive a second abnormal event from a time point after a first query request UPIU for checking the type of the first abnormal event is sent and before the EECC has passed. In such an example, when a second response UPIU is received before the EECC has passed, the abnormal event manager 1110 may ignore the occurrence of the second abnormal event. Since the abnormal event manager 1110 prevents the processing of the occurrence of the second abnormal event, the overhead for handling abnormal events can be reduced.

[0055] An abnormal event management operation according to an embodiment is described with reference to the following drawings.

[0056] Figure 2 It is a diagram illustrating the Figure 1 A flowchart of an example of the operation of the host. Figure 1 right Figure 2 Provide explanation.

[0057] refer to Figure 2 In operation S10, the host 1100 and the storage device 1200 may be powered on. For example, the host 1100 and the storage device 1200 may perform a reset operation, such as but not limited to a power-on reset operation, a hardware reset operation, an endpoint reset operation, and the like.

[0058] In operation S11, the host 1100 may transmit a first command UPIU (CMD-UPIU) to the storage device 1200. The first command UPIU may refer to a signal allowing the storage device 1200 to perform a read and / or write operation.

[0059] In operation S12, the storage device 1200 may perform an operation corresponding to the first command UPIU. For example, the storage device 1200 may perform a read operation and / or a write operation corresponding to the first command UPIU. In addition, the storage device 1200 may generate a first response UPIU including a result of the operation performed based on the first command UPIU and information on whether the first abnormal event occurs in the storage device 1200.

[0060] For example, the abnormal event may include one of the abnormal events specified for the storage device 1200, such as, but not limited to, dynamic device capacity, system pool exhaustion, background operation, high temperature, low temperature, performance throttling, and write enhancer buffer flushing. However, the present disclosure is not limited thereto.

[0061] A dynamic device capacity abnormality event may refer to an abnormality event indicating that dynamic capacity is required in the storage device 1200. A system pool exhaustion abnormality event may refer to an abnormality event indicating that system resources for additional processing are insufficient in the storage device 1200. A background operation abnormality event may refer to an abnormality event indicating that a level of attention required for background operations in the storage device 1200 is required. An excessively high temperature abnormality event and an excessively low temperature abnormality event may refer to abnormalities indicating that the temperature of the storage device 1200 needs to be adjusted to within an allowable range (e.g., below a maximum temperature threshold and / or above a minimum temperature threshold).

[0062] The performance throttling exception event may refer to an exception event indicating that the storage device 1200 may operate with reduced performance. The write enhancer buffer flush exception event may refer to an exception event indicating that an operation of flushing data to the memory device 1220 of the storage device 1200 needs to be performed.

[0063] In operation S13, the storage device 1200 may send a first response UPIU to the host 1100 as a response to the first command UPIU. In an embodiment, the first response UPIU may include information about the occurrence of an abnormal event (eg, EE alarm). The host 1100 may check the occurrence of the first abnormal event based on the first response UPIU.

[0064] In operation S14, the host 1100 and the storage device 1200 may perform an operation for checking the type of the first abnormal event. For example, the host 1100 may send a first query request UPIU for checking the type of the first abnormal event to the storage device 1200. The first query request UPIU may refer to a signal for requesting information about the properties of the storage device 1200. The storage device 1200 may send a first query response UPIU to the host 1100 in response to the first query request UPIU. The first query response UPIU may include information about the type of the first abnormal event.

[0065] For example, in addition to write data and read data to be exchanged between the host 1100 and the storage device 1200 through the command UPIU and the response UPIU, the query request UPIU and the query response UPIU may be used to transmit and / or receive information about descriptors, attributes, and flags.

[0066] In operation S15, the host 1100 may check the type of the first abnormal event. The host 1100 may check the type of the first abnormal event based on the first query response UPIU. For example, the first query response UPIU may include information indicating that the first abnormal event is an abnormal event associated with excessive temperature.

[0067] In operation S16, the host 1100 and the storage device 1200 may perform an operation on the first abnormal event. In an embodiment, the operation on the first abnormal event may refer to an operation of handling the first abnormal event.

[0068] In an embodiment, the operation on the first abnormal event may refer to an operation in which the host 1100 stores a first entry in a work queue of the host 1100. The first entry may correspond to the operation of handling the first abnormal event.

[0069] In an embodiment, the first abnormal event may be an abnormal event of over-temperature. In such an embodiment, the operation of handling the first abnormal event may refer to an operation for reducing the temperature of the storage device 1200 and / or adjusting the storage device 1200 to be lower than the maximum allowable temperature threshold. In an embodiment, the operation for lowering the temperature of the storage device 1200 may include an operation for terminating some running applications. For example, the operation for terminating some running applications may be performed by the host 1100.

[0070] In an embodiment, the first abnormal event may be a performance throttling abnormal event of the storage device 1200. In such an embodiment, the operation of handling the first abnormal event may include an operation of checking a throttling status (e.g., bThrotlingStatus) field of the properties of the storage device 1200. For example, the operation of checking the throttling status field of the properties of the storage device 1200 may be performed by the host 1100.

[0071] refer to Figure 8 Describe the operation of the first abnormal event.

[0072] The above operations S11 to S16 may be repeatedly performed. For example, after performing an operation on the first abnormal event, the host 1100 may send a second command UPIU to the storage device 1200 (operation S11). The host 1100 may receive a second response UPIU from the storage device 1200 (operation S12). The second response UPIU may include information about the occurrence of the second abnormal event. The host 1100 may check the occurrence of the second abnormal event based on the second response UPIU, and may check the type of the second abnormal event (operations S14 and S15). The host 1100 and the storage device 1200 may perform an operation on the second abnormal event (operation S16).

[0073] according to Figure 2 In the illustrated embodiment, whenever the host 1100 receives a response UPIU from the storage device 1200 that may include information indicating that an abnormal event has occurred, an operation for checking the type of the abnormal event (eg, the operation performed in operation S14 ) may be performed.

[0074] In an embodiment, the host 1100 may perform an operation of handling the first abnormal event based on the first response UPIU. In such an embodiment, the first abnormal event may be an event that may indicate a handling time for the event to be handled (processed). For example, the host 1100 may receive the second response UPIU before the handling time of the first abnormal event has passed. The second response UPIU may include information about the occurrence of the second abnormal event. The second abnormal event may be an event of the same type as the first abnormal event.

[0075] In such an example, even if the operation of handling the first abnormal event has been performed, the host 1100 and the storage device 1200 may perform an operation for checking the type of the second abnormal event based on the second response UPIU. Therefore, the operation for checking the type of the second abnormal event may be an unnecessary operation. Therefore, the operation for checking the type of the second abnormal event may result in an increase in system overhead and a potential reduction in the performance of the storage system 1000.

[0076] Figure 3 is a diagram showing a response UPIU according to an embodiment. Figure 3 The response UPIU may include a plurality of fields. The device information field FLD1 among the fields of the response UPIU may include information on whether an abnormal event occurs in the storage device 1200 .

[0077] For example, when the event alert bit EVENT_ALERT (eg, bit [0]) of the device information field FLD1 is “1”, the response UPIU may include information indicating that an abnormal event has occurred in the storage device 1200 .

[0078] The host 1100 may determine whether an abnormal event occurs in the storage device 1200 by checking a set value of an event alert bit EVENT_ALERT (eg, bit [0]) of the device information field FLD1 of the response UPIU.

[0079] The response UPIU may include only information about whether an abnormal event occurs. That is, the response UPIU may not include information about the type of the abnormal event. Therefore, when the host 1100 determines that an abnormal event occurs through the response UPIU, the host 1100 may perform an operation of checking the type of the abnormal event.

[0080] Figure 4 is a diagram depicting attribute fields of a storage device according to an embodiment. Figure 4 , the fields of the attributes of the storage device 1200 may include an exception event control field (eg, a wExceptionEventControl field) and an exception event status field (eg, a wExceptionEventStatus field).

[0081] The storage device 1200 may determine the device information field FLD1 of the response UPIU based on the abnormal event control field and the abnormal event status field of the attribute (for example, see Figure 3 )’s event alert bit EVENT_ALERT (e.g., bit [0]).

[0082] The abnormal event control field may include information about an enabled abnormal event. The abnormal event status field may include information about an abnormal event caused in the storage device 1200 .

[0083] For example, in a state where a specific bit (e.g., bit [3]) of the abnormal event control field is set to "1", the temperature of the storage device 1200 may reach "too high temperature" (e.g., exceeding the maximum allowable temperature threshold). In such an example, the storage device 1200 may set a specific bit (e.g., bit [3]) of the abnormal event status field to "1", and the storage device 1200 may set the event alert bit EVENT_ALERT (e.g., bit [0]) of the device information field FLD1 of the response UPIU to "1".

[0084] For example, a specific bit (e.g., bit [3]) of the abnormal event control field may be in a state set to "0". In such an example, the excessive temperature abnormal event may be disabled. In an embodiment, the temperature of the storage device 1200 may reach an "excessive temperature" threshold. In such an embodiment, the storage device 1200 may set a specific bit (e.g., bit [3]) of the abnormal event status field to "1". However, since the excessive temperature abnormal event may be disabled, the storage device 1200 may set the event alert bit EVENT_ALERT (e.g., bit [0]) of the device information field FLD1 of the response UPIU to "0".

[0085] In an embodiment, a setting value of each bit (eg, bit [0] to bit [6]) of the exception event control field may be set by the host 1100 .

[0086] That is, even if the storage device 1200 satisfies a specific condition in a state where an abnormal event associated with the specific condition is disabled, the host 1100 may not determine that the abnormal event occurs.

[0087] The host 1100 may determine whether an abnormal event occurs in the storage device 1200 through the event alert bit EVENT_ALERT (e.g., bit [0]) of the response UPIU which may be set to "1". For example, the host 1100 may send a query request UPIU to the storage device 1200. The query request UPIU may refer to a signal for checking the type of abnormal event. For example, in order to check the abnormal event status field of the property of the storage device 1200, the host 1100 may send a query request UPIU to the storage device 1200.

[0088] The storage device 1200 may send a query response UPIU to the host 1100 in response to the query request UPIU. The query response UPIU may include information about the type of the first abnormal event caused in the storage device 1200. That is, the query response UPIU may include first abnormal event type information indicating the type of the first abnormal event. For example, the query response UPIU may include an abnormal event status field of the attribute of the storage device 1200.

[0089] For example, the query response UPIU may include information indicating that a setting value of a specific bit (e.g., bit [3]) of the abnormal event status field is "1". In addition, the excessive temperature abnormal event may be an enabled abnormal event. That is, a specific bit (e.g., bit [3]) of the abnormal event control field may be in a state set to "1" by the host 1100. In such an example, the host 1100 may check whether the first abnormal event is an excessive temperature abnormal event based on the query response UPIU.

[0090] Figure 5A and Figure 5B is a diagram illustrating Figure 1 FIG. 1 is an example of a method for managing the temperature of a storage device. Figures 1 to 5B In operation S110, the storage device 1200 may determine whether the temperature check condition is satisfied. When the storage device 1200 determines that the temperature check condition is satisfied, the storage device 1200 may perform operation S120.

[0091] For example, when the temperature of the storage device 1200 reaches "too high temperature" (e.g., exceeds the maximum allowable temperature threshold) and the too high temperature abnormal event is enabled, the storage device 1200 can determine that the temperature check condition is met. For example, when a specific bit (e.g., bit [3]) of the abnormal event control field of the attribute of the storage device 1200 is set to "1", the storage device 1200 can determine that the temperature check condition is met.

[0092] As another example, when the temperature of the storage device 1200 reaches a "too low temperature" (e.g., below a minimum allowable temperature threshold) and the too low temperature abnormal event is enabled, the storage device 1200 may determine that the temperature check condition is satisfied. For example, when a specific bit (e.g., bit [4]) of the abnormal event control field of the properties of the storage device 1200 is set to "1", the storage device 1200 may determine that the temperature check condition is satisfied.

[0093] In operation S120, the storage device 1200 may update the properties of the storage device 1200. For example, the storage device 1200 may update the setting value of the device temperature field (e.g., the bDeviceCaseRoughTemperature field) of the properties of the storage device 1200 to change to a value corresponding to the current temperature. The device temperature field may be Figure 5B Configure as shown.

[0094] In operation S130, the storage device 1200 may determine whether the temperature check cycle has passed. For example, the storage device 1200 may determine whether the temperature check cycle has passed from the time point when operation S120 (e.g., an update operation) is completed. When the storage device 1200 determines that the temperature check cycle has passed, the storage device 1200 may perform operation S110 again. In an embodiment, the temperature check cycle may be about 100 milliseconds (ms).

[0095] refer to Figure 5A and Figure 5B , even if the temperature check condition is satisfied, the storage device 1200 may not change the device temperature field of the properties of the storage device 1200 until the temperature check period has passed.

[0096] For example, as referenced Figure 2 As described above, whenever a response UPIU is received, the host 1100 can check whether an abnormal event occurs. That is, the host 1100 can receive a first response UPIU before the first time point. Subsequently, based on the first response UPIU, the host 1100 can check whether the first abnormal event occurs. In addition, by sending a query request UPIU and receiving a query response UPIU, the host 1100 can check whether the first abnormal event is an over-high temperature abnormal event.

[0097] In an embodiment, at a first time point, the storage device 1200 may update the properties of the storage device 1200. For example, the storage device 1200 may update the setting value of the device temperature field of the properties of the storage device 1200 to a value corresponding to the current temperature of the storage device 1200.

[0098] Subsequently, at a second time point (e.g., after the first time point), the host 1100 may perform an operation to reduce the temperature of the storage device 1200. At a third time point (e.g., after the second time point), the temperature of the storage device 1200 may be lower than the "excessively high temperature" (e.g., the maximum allowable temperature threshold) through the temperature reduction operation performed by the host 1100.

[0099] At a fourth time point (e.g., after the third time point), the storage device 1200 may generate a second response UPIU. The fourth time point may be a time point at which the temperature check cycle has not passed since the first time point. That is, even if the temperature of the storage device 1200 may be a normal temperature (e.g., within the allowable temperature range), the storage device 1200 may determine that a second excessively high temperature abnormal event has occurred in the storage device 1200. In this way, the storage device 1200 may generate a second response UPIU including information indicating that the second abnormal event has occurred.

[0100] After the fourth time point, the host 1100 may receive the second response UPIU and may send a query request UPIU for checking the type of the second abnormal event. In addition, the storage device 1200 may send a query response UPIU for providing a notification that the second abnormal event is an over-temperature abnormal event.

[0101] That is to say, as reference Figure 2 As described, even if an operation to handle an abnormal event has been performed, the host 1100 may receive a response UPIU providing a notification of the occurrence of the same abnormal event. In such an example, the host 1100 and the storage device 1200 may perform unnecessary operations for checking the type of abnormal event. That is, even if a response UPIU including information about the occurrence of an abnormal event identified as abnormal is received, the host 1100 may perform unnecessary operations to check the occurrence of the abnormal event. Unnecessary operations may cause the performance of the storage system 1000 to be reduced.

[0102] According to an embodiment of the present disclosure, whenever a response UPIU is received, the host 1100 may not determine whether an abnormal event occurs. Therefore, the storage system 1000 may have potentially improved performance compared to related storage systems.

[0103] Fig. 6A It is a diagram illustrating the Figure 1 A diagram of the operation of the storage system. Figures 1 to 5B To describe Fig. 6A . Fig. 6A Operations S30 and S32 to S37 may include and / or may be similar in many aspects to those described above. Figure 2The operations S10 and S11 to S16 described are similar and may include additional features not mentioned above. Therefore, for the sake of brevity, the above references may be omitted. Figure 2 The described operations S30 and S32 to S37 are described repeatedly.

[0104] refer to Fig. 6A , the operation of the memory system 1000 may include confirming the EECC (operation S31) and determining whether the EECC is past (operation S44).

[0105] In operation S31, the memory system 1000 may confirm the EECC. That is, the host 1100 may confirm the EECC through the set value of a specific field among the fields of the attributes of the memory device 1200. For example, after the host 1100 is powered on, the host 1100 may confirm the set EECC in advance.

[0106] In operation S41, the host 1100 may transmit a second command UPIU to the storage device 1200. In operation S42, the storage device 1200 may perform an operation corresponding to the second command UPIU, and may generate a second response UPIU.

[0107] In operation S43, the storage device 1200 may transmit a second response UPIU to the host 1100. The second response UPIU may include second event occurrence information (EE2 alarm) indicating the occurrence of the second abnormal event.

[0108] In operation S44, the host 1100 may determine whether the EECC has passed. According to an embodiment, whenever a response UPIU is received, the host 1100 may not determine whether an abnormal event has occurred. After receiving the second response UPIU, the host 1100 may determine whether a second abnormal event has occurred based on whether the EECC has passed.

[0109] In an embodiment, the time point at which the host 1100 receives the second response UPIU may be after the time point at which the EECC has passed from the time point at which the first query request UPIU was sent. In such an embodiment, the host 1100 may determine that the EECC has passed.

[0110] In an embodiment, the time point at which the host 1100 receives the second response UPIU may be after the time point at which the EECC has passed from the time point at which the first query response UPIU was received. In such an embodiment, the host 1100 may determine that the EECC has passed.

[0111] In an embodiment, the time point at which the host 1100 receives the second response UPIU may be after the time point at which the EECC has passed from the time point at which the first response UPIU was received. In such an embodiment, the host 1100 may determine that the EECC has passed.

[0112] When the EECC is elapsed, the host 1100 may determine whether the second abnormal event occurs. For example, the host 1100 may determine whether the second abnormal event occurs by checking the device information field FLD1 of the second response UPIU (for example, see Figure 3 ) determines the occurrence of an abnormal event by checking the setting value of the event alarm bit EVENT_ALERT (eg, bit [0]) of the host 1100. After the host 1100 checks the occurrence of the second abnormal event, the host 1100 may perform operation S45.

[0113] When the EECC has not passed, the host 1100 may ignore the second abnormal event. That is, when the EECC has not passed, the host 1100 may not check the device information field FLD1 of the second response UPIU (for example, see Figure 3 ) of the event alert bit EVENT_ALERT (eg, bit [0]). In addition, the host 1100 and the storage device 1200 may not perform an operation for checking the type of the second abnormal event.

[0114] In operation S45, the host 1100 and the storage device 1200 may perform an operation for checking the type of the second abnormal event. The host 1100 may send a second query request UPIU for checking the type of the second abnormal event to the storage device 1200. The storage device 1200 may send a second query response UPIU to the host 1100 as a response to the second query request UPIU. The second query response UPIU may include information about the type of the second abnormal event. For example, the second query response UPIU may include second event type information indicating the type of the second abnormal event.

[0115] In operation S46, the host 1100 may check the type of the second abnormal event based on the second query response UPIU.

[0116] In operation S47, the host 1100 may perform an operation on the second abnormal event. In an embodiment, the operation on the second abnormal event may include an operation of adding a second entry to a work queue of the host 1100. The operation of adding the second entry to the work queue of the host 1100 may be performed by the host 1100. The second entry may correspond to the operation of handling the second abnormal event.

[0117] In an embodiment, the type of the second abnormal event may be the same as the type of the first abnormal event. Alternatively or additionally, the operation of handling the first abnormal event may not be performed at a point in time when the check of the type of the second abnormal event is fully performed (e.g., operation S45). In such an embodiment, the host 1100 may not add the second entry to the work queue. That is, the host 1100 may ignore (or prevent processing) the second abnormal event. That is, the operation of handling the same abnormal event may be prevented from being repeatedly performed. Therefore, the performance of the storage system 1000 may potentially be improved. Reference Fig.9A and Fig. 9B Describe the operation of the second abnormal event.

[0118] As reference Figure 5A and Figure 5B As described, even if an operation for handling an abnormal event has been performed, the host 1100 may receive a response UPIU including information indicating that the same abnormal event has occurred. In such an embodiment, the host 1100 may ignore the occurrence of an abnormal event before the EECC has passed. In addition, even if the host 1100 receives a response UPIU including information about the occurrence of an abnormal event that is abnormally identified by the storage device 1200, the host 1100 may ignore the occurrence of the abnormal event before the abnormal event check cycle has passed. Therefore, compared to a related storage system, unnecessary operations associated with abnormal events performed in the storage system 1000 may be minimized.

[0119] In an embodiment, before the EECC passes, the host 1100 may receive a response UPIU including information about the occurrence of the second abnormal event. In such an embodiment, the host 1100 may ignore the occurrence of the second abnormal event without determining whether the second abnormality occurs.

[0120] In an embodiment, the host 1100 may send a third command UPIU to the storage device 1200. The host 1100 may receive a third response UPIU corresponding to the third command UPIU after the EECC has passed. The third response UPIU may include information about the occurrence of the third abnormal event. In such an embodiment, the host 1100 and the storage device 1200 may perform an operation for checking the type of the third abnormal event (e.g., operations S45 and S46) and an operation corresponding to the third abnormal event (e.g., operation S47). In an embodiment, the type of the third abnormal event may be the same as the type of the second abnormal event.

[0121] That is, even if the storage system 1000 ignores the second abnormal event, the storage system 1000 can handle the third abnormal event later, and thus, a problem that may occur due to ignoring the second abnormal event can be prevented from occurring in the storage device 1200 .

[0122] Figure 6B is a diagram illustrating a method according to an embodiment Figure 1 FIG. 1 is another example of an operation of a storage system. Fig. 6A right Figure 6B Provide explanation. Figure 6B The operations may include and / or may be similar in many respects to those referred to above Fig. 6A The operations described above may include additional features not mentioned above. Therefore, for the sake of brevity, the above reference may be omitted. Fig. 6A Description Figure 6B Repeated description of the operation.

[0123] Before operation S43, refer to Fig. 6A The described operations S30 to S37 may be performed.

[0124] For example, before the EECC passes, the host 1100 may receive a second response UPIU (eg, operation S43). The second response UPIU may include information indicating that the second abnormal event has occurred in the storage device 1200. Even if the EECC has not passed, the host 1100 may check the occurrence of the second abnormal event based on the second response UPIU.

[0125] However, before the EECC has not passed, the operation of checking the type of the second abnormal event (eg, operations S45 to S46 ) and the operation on the second abnormal event (eg, operation S47 ) may not be performed.

[0126] For example, in operation S44, when the EECC has not passed, operation S48 may be performed.

[0127] In operation S48, the host 1100 may determine whether the host 1100 is in a busy state. For example, the host 1100 may perform a specific operation corresponding to an external request. In such an example, the host 1100 may determine that the state of the host 1100 is a busy state. When the host 1100 determines that the state of the host 1100 is a busy state, the host 1100 may perform a specific operation (e.g., an operation requested from the outside). When the host 1100 determines that the state of the host 1100 is not a busy state, the host 1100 may perform operation S49.

[0128] In operation S49, the host 1100 may determine again whether the EECC is past. Even if a response UPIU is not received from the storage device 1200, the host 1100 may determine that the EECC is past.

[0129] When the EECC elapses, the host 1100 and the storage device 1200 may perform a routine for a second abnormal event (operation S50). The routine for the second abnormal event may correspond to operations S45 to S47.

[0130] That is to say, Figure 6B As shown, when the host 1100 receives information about the occurrence of an abnormal event before the abnormal event check cycle has passed, the host 1100 can determine whether the abnormal event has occurred. In addition, after the abnormal event check cycle has passed, even if the response UPIU is not received, the host 1100 and the storage device 1200 can also perform a routine for a second abnormal event.

[0131] Fig. 7A and Figure 7B It is a diagram illustrating the Fig. 6A FIG. 10 is a diagram of operation S31 of FIG. Fig. 6A To describe Fig. 7A and Figure 7B . refer to Fig. 7A In operation S31a, the host 1100 and the storage device 1200 may perform an operation for confirming the EECC. For example, the host 1100 may send a query request UPIU to the storage device 1200. The query request UPIU may be and / or may include a UPIU that requests information about an abnormal event check cycle field (e.g., a wExceptionEventCheckCycle field) from the properties of the storage device 1200. The storage device 1200 may send a query response UPIU to the host 1100 in response to the query request UPIU. The query response UPIU may include data of the abnormal event check cycle field.

[0132] In operation S31b, the host 1100 may confirm the EECC based on the inquiry response UPIU.

[0133] The Abnormal Event Check Period field can be configured as follows: Figure 7B Reference Figure 7B , the field of the attribute of the storage device 1200 may include an abnormal event check period field. For example, the host 1100 may change the setting value of the abnormal event check period field.

[0134] exist Figure 7B In the example, the identifier number IDN of the abnormal event check period field is marked as “20h”. However, the present disclosure is not limited thereto. In an embodiment, any one of the reserved fields of the attributes of the storage device 1200 may be used as the abnormal event check period field.

[0135] Figure 8 is a diagram illustrating a method according to an embodiment Figure 1Figure 1 shows an example of the operation of the host. Figure 8 , shows an example of an operation on an abnormal event that can be performed by the host 1100. Figure 1 and Figure 2 To describe Figure 8 .like Figure 8 As shown, the host 1100 may include an exception event manager 1110 and a host memory 1120 .

[0136] In an embodiment, the host memory 1120 may include a volatile memory, such as, but not limited to, SRAM and / or DRAM. However, the present disclosure is not limited thereto. For example, the main memory 1120 may include a non-volatile memory, such as, but not limited to, flash memory and / or PRAM. The host memory 1120 may include a work queue 1121a. For example, the work queue 1121a may be and / or may include a queue that may be implemented in a first-in, first-out (FIFO) scheme. The host 1100 may handle entries stored in the work queue 1121a in a FIFO scheme.

[0137] In an embodiment, the host 1100 may receive a response UPIU RUP including information on whether an abnormal event occurs from the storage device 1200. The host 1100 may check the occurrence of an abnormal event by responding to the UPIU-RUP, and may check the type of the abnormal event by querying the UPIU. The host 1100 may perform an operation of handling the abnormal event.

[0138] For example, after checking the type of the abnormal event corresponding to the response UPIU RUP, the host 1100 may not immediately perform an operation to handle the abnormal event due to the execution of any other operation (e.g., an operation requested from the outside). Therefore, the host 1100 may generate an entry E (e.g., a first entry E1, a second entry E2, a third entry E3, etc., hereinafter generally referred to as "E") corresponding to the operation to handle the abnormal event, and then may store the entry E in the work queue 1121a. For example, when no urgent operation needs to be performed, the host 1100 may check the entry E stored in the work queue 1121a, and may handle the abnormal event. In an embodiment, the entry E may refer to a work structure.

[0139] In an embodiment, the host 1100 may receive a plurality of response UPIU RUPs during a specific time interval. In such an embodiment, the host 1100 may not immediately handle the abnormal event corresponding to the response UPIU RUP due to the execution of other operations. Therefore, the host 1100 may store the first entry E1 to the third entry E3 corresponding to the operation of handling the abnormal event in the work queue 1121a. In an embodiment, the first entry E1 and the third entry E3 may be entries corresponding to the same operation. For example, each of the first entry E1 and the third entry E3 may correspond to the operation of handling an excessively high temperature abnormal event. As another example, the second entry E2 may correspond to the operation of handling a write enhancer buffer refresh abnormal event.

[0140] For example, when the host 1100 does not quickly handle the write booster buffer flush exception event, the performance of the storage device 1200 may be significantly reduced. Therefore, it may be necessary to handle the write booster buffer flush exception event before the overtemperature exception event. However, the host 1100 may process entries E1 to E3 in a FIFO scheme, and therefore, the handling of the write booster buffer flush exception event may be delayed. Therefore, the performance of the storage device 1200 may be significantly reduced.

[0141] The host 1100 may receive the response UPIU-RUP in a state where the first entry E1 corresponding to the operation of handling the excessive temperature abnormality event exists in the work queue 1121a. In an embodiment, the response UPIU may include information about the occurrence of the excessive temperature abnormality event. In such an embodiment, even if the first entry E1 exists in the work queue 1121a, the host 1100 may add the third entry E3 to the work queue 1121a. The third entry E3 may correspond to the operation of handling the excessive temperature abnormality event.

[0142] Therefore, after the host 1100 performs the operation corresponding to the first entry E1, the host 1100 may unnecessarily perform the operation of processing the third entry E3. In an embodiment, the operation corresponding to the third entry E3 may be the same as the operation corresponding to the first entry E1. As a result, the performance of the storage system 1000 may be reduced.

[0143] In an embodiment, the above operations of the host 1100 may be performed by the abnormal event manager 1110 .

[0144] Fig.9A and Fig. 9B It is a diagram illustrating the Figure 1 Figure 1.1 shows the operation of the host. Fig.9A and Fig. 9B , shows the operations that can be performed by the host for abnormal events. Figure 1 , Figure 3 , Figure 4 as well as FIG. 6A to FIG. 8 To describe Fig.9A and Fig. 9B .like Fig.9A As shown, the host 1100 may include an abnormal event manager 1110 and a host memory 1120. The host memory 1120 may include a work queue 1121b. The host 1100 may receive a response UPIU RUP including information on whether an abnormal event occurs from the storage device 1200. Fig.9A and Fig. 9B The operations may include and / or may be similar in many respects to those referred to above Figure 8 The operations described above may include additional features not mentioned above. Therefore, for the sake of brevity, the above reference may be omitted. Figure 8 Description Fig.9A and Fig. 9B Repeated description of the operation. Fig.9A and Fig. 9B Mainly based on Figure 8 to describe the differences.

[0145] In an embodiment, Figure 8 Unlike the work queue 1121a shown, the work queue 1121b may be a priority queue. Figure 8 As described above, the work queue 1121b may include entries corresponding to operations for handling abnormal events (eg, a first entry E1 , a second entry E2 , and a third entry E3 ).

[0146] and Figure 8 Differently, the host 1100 may process the entries of the work queue 1121 b (eg, the first entry E1 and the second entry E2 ) based on the priority of each entry.

[0147] For example, at a first time point, the host 1100 may receive a first response UPIU. The first response UPIU may include information indicating that a first abnormal event occurs in the storage device 1200. The first abnormal event may be an over-high temperature abnormal event. The host 1100 may generate a first entry E1 corresponding to an operation for handling the first abnormal event, and may add the entry E1 to the work queue 1121b.

[0148] At a second time point (e.g., after the first time point), the host 1100 may receive a second response UPIU. The second response UPIU may include information indicating that a second abnormal event occurred in the storage device 1200. The second abnormal event may be a write enhancer buffer flush abnormal event. The host 1100 may generate a second entry E2 corresponding to an operation of handling the second abnormal event, and may add the entry E2 to the work queue 1121b.

[0149] At a third time point (e.g., after the second time point), the host 1100 may receive a third response UPIU. The third response UPIU may include information indicating that a third abnormal event has occurred in the storage device 1200. The third abnormal event may be an excessively high temperature abnormal event. In an embodiment, the first entry E1 may still exist in the work queue 1121b. Therefore, the host 1100 may not add the third entry E3 corresponding to the operation of handling the third abnormal event to the work queue 1121b.

[0150] That is, an entry (e.g., first entry E1) associated with an abnormal event (e.g., first abnormal event) of the same type as the current abnormal event (e.g., third abnormal event) may exist in the work queue 1121b. In such an example, the host 1100 may not add an entry (e.g., third entry) corresponding to an operation for handling the current abnormal event (e.g., third abnormal event) to the work queue 1121b.

[0151] At a fourth time point (e.g., after the third time point), the host 1100 may handle the first entry E1 and the second entry E2. In an embodiment, the priority P1 of the second entry E2 may be higher than the priority P2 of the first entry E1. In such an embodiment, the host 1100 may handle the second entry E2 before the first entry E1. That is, the host 1100 may first perform an operation corresponding to the second entry E2, and then may perform an operation corresponding to the first entry E1, and thus, the first abnormal event and the second abnormal event may be handled.

[0152] According to an embodiment, the host 1100 may handle the abnormal event based on the priority of the abnormal event. Alternatively or additionally, when the host 1100 receives a response UPIU providing a notification of the occurrence of a second abnormal event of the same type before handling the first abnormal event, the host 1100 may ignore the second abnormal event. That is, the host 1100 may only handle the first abnormal event without handling the second abnormal event.

[0153] In an embodiment, the host 1100 may set the priority for each abnormal event type differently.

[0154] In an embodiment, the type of the first abnormal event may be associated with the temperature of the storage device 1200 and / or may be associated with the performance throttling of the storage device 1200. In addition, the type of the second abnormal event may be different from the type of the first abnormal event. In an embodiment, the priority assigned to the second abnormal event may be higher than the priority assigned to the first abnormal event. In such an embodiment, the host 1100 may handle the second abnormal event before the first abnormal event. That is, the host 1100 may handle the entry corresponding to the second abnormal event (e.g., the second entry E2) before the entry corresponding to the first abnormal event (e.g., the first entry E1).

[0155] In an embodiment, the above operations of the host 1100 may be performed by the abnormal event manager 1110 .

[0156] Fig. 9B is a diagram illustrating a host 1100 according to an embodiment Fig.9A Figure 1121b shows a method for adding entries to the work queue 1121b. Fig. 9B In operation S210, the host 1100 may receive a first response UPIU. The first response UPIU may include information indicating that a first abnormal event occurs in the storage device 1200.

[0157] In operation S220 , the host 1100 may add a first entry corresponding to an operation of processing a first abnormal event to the work queue 1121 b .

[0158] In operation S230 , the host 1100 may receive a second response UPIU. The second response UPIU may include information indicating that a second abnormal event occurs in the storage device 1200 .

[0159] In operation S240, the host 1100 may determine whether the first condition is met. For example, the type of the second abnormal event may be the same as the type of the first abnormal event. Alternatively or additionally, a first entry corresponding to the operation of handling the first abnormal event may exist in the work queue 1121b. In such an example, the host 1100 may determine that the first condition is met. When the host 1100 determines that the first condition is met (yes in operation S240), the host 1100 may not add the second entry corresponding to the operation of handling the second abnormal event to the work queue 1121b. When the host 1100 determines that the first condition is not met (no in operation S240), the host 1100 may add the second entry to the work queue 1121b.

[0160] In an embodiment, executing Fig. 6A The operation on the first abnormal event (for example, Fig. 6AOperation S37) may include adding the first entry to the work queue 1121b (operation S220). In addition, executing Fig. 6A The operation on the first abnormal event (for example, Fig. 6A Operation S47 of the process may include determining whether the first condition is satisfied (operation S240) and adding the second entry to the work queue 1121b (operation S250).

[0161] According to an embodiment, the host 1100 may handle the abnormal event based on the priority of the abnormal event. Alternatively or additionally, the host 1100 may prevent the same abnormal event from being repeatedly processed. Therefore, the performance of the storage system 1000 may be improved compared to the related storage system.

[0162] Fig. 10A is a diagram illustrating a method according to an embodiment Figure 1 FIG. 1 is another example of an operation of a storage system. Figures 1 to 9B To describe Fig. 10A . refer to Fig. 10A In operation S50, the host 1100 and the storage device 1200 may be powered on. For example, the host 1100 and the storage device 1200 may perform a reset operation, such as but not limited to a power-on reset operation, a hardware reset operation, an endpoint reset operation, and the like.

[0163] In operation S51, the memory system 1000 may confirm the EECC. For example, the host 1100 may read the abnormal event check period field of the properties of the memory device 1200, and may confirm the EECC (eg, by querying the request UPIU).

[0164] In operation S52 , the host 1100 may transmit a first command UPIU (CMD UPIU) to the storage device 1200 .

[0165] In operation S53, the storage device 1200 may perform an operation corresponding to the first command UPIU, and may generate a first response UPIU.

[0166] In an embodiment, the storage device 1200 may generate a first response UPIU including information on whether the first abnormal event occurs and information on the type of the first abnormal event.

[0167] In operation S54 , the storage device 1200 may transmit a first response UPIU to the host 1100 .

[0168] In operation S55, through the first response UPIU, the host 1100 may determine whether the first abnormal event occurs, and may check the type of the first abnormal event.

[0169] In operation S56, the host 1100 and the storage device 1200 may perform an operation on the first abnormal event. For example, the host 1100 may perform an operation to handle the first abnormal event. For example, the host 1100 may add an entry corresponding to the operation to handle the first abnormal event to the work queue 1121b (for example, see Fig.9A ).

[0170] In operation S61 , the host 1100 may transmit a second command UPIU (CMD UPIU) to the storage device 1200 .

[0171] In operation S62, the storage device 1200 may perform an operation corresponding to the second command UPIU and may generate a second response UPIU. The second response UPIU may include information on whether the second abnormal event occurs and information on the type of the second abnormal event.

[0172] In operation S63 , the storage device 1200 may transmit a second response UPIU to the host 1100 .

[0173] In operation S64, the host 1100 may determine whether the EECC has passed. For example, when the time point of receiving the second response UPIU is after the time point of the EECC passing from the time point of receiving the first response UPIU, the host 1100 may determine that the EECC has passed. When the EECC has passed (yes in operation S64), the host 1100 may perform operation S65. When the EECC has not passed (no in operation S64), the host 1100 may ignore (e.g., prevent processing) the second abnormal event.

[0174] In operation S65, based on the second response UPIU, the host 1100 may determine whether a second abnormal event occurs, and may check a type of the second abnormal event.

[0175] In operation S66, the host 1100 and the storage device 1200 may perform an operation on the second abnormal event. For example, the operation on the second abnormal event may include and / or may be similar in many aspects to the reference Fig. 6A , Fig.9A and Fig. 9B Describes the operation.

[0176] According to an embodiment, in addition to information about whether an abnormal event occurs, the response UPIU may also include information about the type of the abnormal event. Therefore, the storage system 1000 may not additionally generate a query request UPIU and a query response UPIU for checking the type of the abnormal event. Therefore, compared with related storage systems, the storage system 1000 can potentially handle abnormal events at a higher speed.

[0177] According to an embodiment, the host 1100 may determine whether an abnormal event occurs based on the EECC. Therefore, the host 1100 may ignore unnecessary notifications of abnormal events. Therefore, compared with related storage systems, the overhead of handling abnormal events may be reduced.

[0178] Fig. 10B It is a diagram illustrating the Figure 1 A diagram of another example of operation of a storage system. Fig. 10B The operations may include and / or may be similar in many respects to those referred to above Fig. 10A The operations described above may include additional features not mentioned above. Therefore, for the sake of brevity, the above reference may be omitted. Fig. 10A Description Fig. 10B Therefore, it is mainly based on the Fig. 10A to describe the difference Fig. 10B .

[0179] refer to Fig. 10B , after receiving the second response UPIU (eg, after operation S63), in operation S65, the host 1100 may check whether the second abnormal event occurs and the type of the second abnormal event based on the second response UPIU.

[0180] In operation S65a, the host 1100 may determine whether the type of the second abnormal event is the first type. In an embodiment, the second abnormal event may be an over-high temperature abnormal event, an over-low temperature abnormal event, or a performance throttling abnormal event. In such an embodiment, the host 1100 may determine that the type of the second abnormal event is the first type (yes in operation S65a). In an embodiment, the second abnormal event may not be an over-high temperature abnormal event, may not be an over-low temperature abnormal event, and may not be a performance throttling abnormal event. In such an embodiment, the host 1100 may determine that the second abnormal event does not correspond to the first type (no in operation S65a).

[0181] When the second abnormal event corresponds to the first type (Yes in operation S65a), the host 1100 may perform operation S65b. When the second abnormal event does not correspond to the first type (No in operation S65a), the host 1100 may perform operation S66.

[0182] In operation S65b, the host 1100 may determine whether the EECC has passed. When the EECC has not passed (No in operation S65b), the host 1100 may ignore the second abnormal event. When the EECC has passed (Yes in operation S65b), the host 1100 may perform operation S66.

[0183] In operation S66, the host 1100 may perform an operation on the second abnormal event. For example, the operation on the second abnormal event may include and / or may be similar in many aspects to the reference Fig. 6A , Fig.9A and Fig. 9B Describes the operation.

[0184] That is, according to an embodiment, when an abnormal event caused in the storage device 1200 requires urgent processing, the host 1100 may handle the abnormal event without being sure whether the EECC has passed.

[0185] Fig.11 The diagram is based on the reference Fig. 10A and Fig. 10B Figure 1. Response UPIU diagram used in operation of the described embodiment. Figure 3 , Fig. 10A and Fig. 10B To describe Fig.11 . refer to Fig.11 , the response UPIU RUP may include a device information field FLD1 and a plurality of reserved fields RFD. In an embodiment, the number of reserved fields RFD may be 16. For example, in fields 0 to 31 of the response UPIU (RUP), each of fields 16 to 31 may be a reserved field (RFD).

[0186] The host 1100 may check the device information field FLD1 of the response UPIU and may determine whether an abnormal event occurs. That is, referring to the event alert bit EVENT_ALERT (eg, bit [0]) of the device information field FLD1, the host 1100 may determine whether an abnormal event occurs.

[0187] In an embodiment, the response UPIU may include an abnormal event type alarm field FLD2. For example, the plurality of reserved fields RFD may include the abnormal event type alarm field FLD2. As another example, the first reserved field and the second reserved field in the plurality of reserved fields RFD may constitute the abnormal event type alarm field FLD2.

[0188] The setting value of the abnormal event type alarm field FLD2 may correspond to the setting value of the abnormal event status field (e.g., the wExceptionEventStatus field) of the attribute of the storage device 1200. That is, the setting value of the bits (e.g., bit [0] to bit [6]) of the abnormal event type alarm field FLD2 may correspond to the setting value of the bits (e.g., bit [0] and bit [6]) of the abnormal event status field of the attribute of the storage device 1200.

[0189] For example, when the temperature of the storage device 1200 reaches "too high temperature" (e.g., exceeds the maximum allowable temperature threshold), the setting value of the bit (e.g., bit [3]) of the abnormal event status field of the attribute can be set to "1". In addition, the setting value of the bit (e.g., bit [3]) of the abnormal event type alarm field FLD2 can be set to "1". The excessive temperature abnormal event can be in an enabled state. That is, the setting value of a specific bit (e.g., bit [3]) of the abnormal event control field (e.g., wExceptionEventControl field) of the attribute of the storage device 1200 can be set to "1".

[0190] In such an example, the setting value of the event alarm bit EVENT_ALERT (e.g., bit [0]) of the device information field FLD1 of the response UPIU may be set to "1". The host 1100 may refer to the device information field FLD1 of the response UPIU to determine that an abnormal event has occurred. The host 1100 may check the abnormal event type alarm field FLD2 and may determine an excessively high temperature abnormal event. That is, the host 1100 may check the type of abnormal event enabled through the abnormal event type alarm field FLD2.

[0191] According to an embodiment, some reserved fields RFD of the response UPIU may be defined as abnormal event type alarm fields FLD2. By responding to the UPIU, in addition to determining whether an abnormal event occurs, the host 1100 may also check the type of the enabled abnormal event. Therefore, the number of times that the query UPIU for checking the type of the abnormal event is generated may be reduced. Therefore, the storage system 1000 may handle the abnormal event faster than a related storage system.

[0192] Fig.12 It is a diagram illustrating the Figure 1 The diagram of the host operation method. Figure 1 , Figure 3 , Figure 4 , FIG. 6A to FIG. 10B right Fig.12 Reference Fig.12 , in operation S310 , the host 1100 may send a first command UPIU to the storage device 1200 .

[0193] In operation S320, the host 1100 may receive a first response UPIU from the storage device 1200. The first response UPIU may be a response signal to the first command UPIU. The first response UPIU may include information indicating that a first abnormal event occurs in the storage device 1200.

[0194] In operation S330, the host 1100 may handle the first response UPIU. For example, the host 1100 may check the occurrence of the first abnormal event based on the first response UPIU. The host 1100 may send a first query request UPIU to the storage device 1200, and may check the type of the first abnormal event by receiving the first query response UPIU from the storage device 1200. The host 1100 may perform an operation on the first abnormal event. For example, the operation on the first abnormal event may include adding an entry corresponding to the operation of handling the first abnormal event to a priority work queue (e.g., Fig.9A work queue 1121b).

[0195] In an embodiment, the first response UPIU may further include information about the type of the first abnormal event. In such an embodiment, the host 1100 may send a query request UPIU, and may check the type of the first abnormal event without receiving a query response UPIU. For example, the host 1100 may refer to the abnormal event type alarm field (e.g., Fig.11 FLD2) to check the type of the first abnormal event.

[0196] In operation S340 , the host 1100 may transmit a second command UPIU to the storage device 1200 .

[0197] In operation S350, the host 1100 may receive a second response UPIU from the storage device 1200. The second response UPIU may be a response signal to the second command UPIU transmitted from the host 1100 to the storage device 1200. The second response UPIU may include information indicating that the second abnormal event occurs in the storage device 1200.

[0198] In operation S360, the host 1100 may handle the second response UPIU. For example, the host 1100 may check the occurrence of the second abnormal event based on the EECC and the second response UPIU.

[0199] The host 1100 may send a query request UPIU to the storage device 1200, and may check the type of the second abnormal event through a process of receiving a query response UPIU from the storage device 1200. The host 1100 may perform an operation on the second abnormal event. For example, the operation on the second abnormal event may include adding an entry corresponding to the operation of handling the second abnormal event to a priority work queue of the host 1100 (e.g., Fig.9A work queue 1121b).

[0200] In an embodiment, the second response UPIU may further include information about the type of the second abnormal event. In such an embodiment, the host 1100 may send a query request UPIU, and may check the type of the second abnormal event without receiving a query response UPIU. For example, the host 1100 may refer to the abnormal event type alarm field (e.g., Fig.11 FLD2) is used to check the type of the second abnormal event.

[0201] In operation S370, the host 1100 may handle the first abnormal event and the second abnormal event. The host 1100 may handle the entries stored in the work queue (eg, Fig.9A For example, the host 1100 may execute a command corresponding to an entry in a work queue (e.g., Fig.9A The exception event is handled by the operation corresponding to the entry in the work queue 1121b).

[0202] Fig.13 is a diagram showing a method according to an embodiment of the present invention. Fig.12 In operation S331, the host 1100 may determine whether the first abnormal event occurs. For example, the host 1100 may determine whether the first abnormal event occurs by checking the device information field FLD1 of the first response UPIU (for example, see Figure 3 and Fig.11 ) to determine whether the first abnormal event occurs. For example, the setting value of the event alarm bit EVENT_ALERT (e.g., bit [0]) of the device information field FLD1 of the first response UPIU may be "1". In such an example, the host 1100 may determine that the first abnormal event occurs in the storage device 1200 (yes in operation S331). Alternatively, the host 1100 may determine that the first abnormal event does not occur (no in operation S331) and terminate the execution of operation S330.

[0203] In operation S332, the host 1100 may check the type of the first abnormal event. In an embodiment, the first response UPIU may not include information about the type of the first abnormal event. In such an embodiment, the host 1100 may send a first query request UPIU. The host 1100 may receive a first query response UPIU to the first query request UPIU from the storage device 1200. For example, the first query request UPIU may be a signal for checking an abnormal event status field (e.g., a wExceptionEventStatus field) of an attribute of the storage device 1200.

[0204] In an embodiment, when the first response UPIU includes information about the type of the first abnormal event, the host 1100 may refer to the abnormal event type alarm field (e.g., Fig.11 FLD2) is used to check the type of the first abnormal event without sending the first query request UPIU.

[0205] In operation S333, the host 1100 may perform a first operation on the first abnormal event. For example, the first operation may be an operation for handling the first abnormal event. As another example, the first operation may include adding a first entry corresponding to the operation for handling the first abnormality to a priority work queue (e.g., Fig.9A work queue 1121b).

[0206] In operation S334, the host 1100 may adjust the EECC. For example, the type of the first abnormal event may be an over-high temperature abnormal event, an over-low temperature abnormal event, or a performance throttling abnormal event. Alternatively or additionally, at the time point of receiving the first response UPIU, the EECC may have a default value. For example, the default value of the EECC may be zero (0) seconds. In such an example, the host 1100 may increase the EECC.

[0207] In an embodiment, the host 1100 may send a query request UPIU for changing the EECC. The query request UPIU may be an abnormal event check period field (eg, Figure 7B The storage device 1200 may change the EECC in response to the query request UPIU. The storage device 1200 may change the setting value of the abnormal event check cycle field of the property of the storage device 1200 in response to the query request UPIU.

[0208] According to an embodiment, when an abnormal event associated with temperature or a performance throttling abnormal event occurs in the storage device 1200 , the host 1100 may increase the EECC.

[0209] Fig.14 It is a diagram illustrating the Fig.12 FIG. 3 is a diagram of operation S360 of . In operation S361, the host 1100 may determine whether the EECC has passed. For example, the time point when the host 1100 receives the second response UPIU may be after the time point when the EECC has passed from the time point when the host 1100 sent the first query request UPIU. In an embodiment, the first query request UPIU may refer to a signal for checking the type of the first abnormal event. In such an embodiment, the host 1100 may determine that the EECC has passed.

[0210] For example, the time point at which the host 1100 receives the second response UPIU may be after the time point at which the EECC has elapsed from the time point at which the host 1100 receives the first response UPIU. In such an example, the host 1100 may determine that the EECC has elapsed.

[0211] When the EECC has not passed (No in operation S361), the host 1100 may perform operation S362. When the EECC has passed (Yes in operation S361), the host 1100 may perform operation S363.

[0212] In operation S362, the host 1100 may ignore the occurrence of the second abnormal event. That is, the host 1100 may not check the device information field FLD1 of the second response UPIU (for example, see Figure 3 and 11 )’s event alert bit EVENT_ALERT (e.g., bit [0]).

[0213] In operation S363, the host 1100 may determine whether a second abnormal event occurs. For example, when the device information field FLD1 (eg, see Figure 3 and 11 ) is set to "1", the host 1100 may determine that the second abnormal event occurs in the storage device 1200 (Yes in operation S363). Alternatively, the host 1100 may determine that the second abnormal event does not occur (No in operation S363) and terminate the execution of operation S360.

[0214] In operation S364, the host 1100 may check the type of the second abnormal event. In an embodiment, when the second response UPIU does not include information about the type of the second abnormal event, the host 1100 may send a second query request UPIU to the storage device 1200. The host 1100 may receive a second query response UPIU to the second query request UPIU from the storage device 1200. For example, the second query request UPIU may be a signal for checking an abnormal event status field (e.g., a wExceptionEventStatus field) of an attribute of the storage device 1200.

[0215] In an embodiment, when the second response UPIU includes information about the type of the second abnormal event, the host 1100 may refer to the abnormal event type alarm field (e.g., Fig.11 FLD2) is used to check the category of the second abnormal event without sending the second query request UPIU.

[0216] In operation S365, the host 1100 may perform a second operation on the second abnormal event. For example, the second operation may be an operation for handling the second abnormal event. For example, the second operation may include adding a second entry corresponding to the operation for handling the second abnormality to a priority work queue (e.g., Fig.9A work queue 1121b).

[0217] In operation S366, the host 1100 may adjust the EECC. The host 1100 may send a query request UPIU for changing the EECC. The query request UPIU may be an abnormal event check period field (eg, Figure 7B The signal that sets the value of the wExceptionEventCheckCycle field).

[0218] The storage device 1200 may change the EECC in response to the query request UPIU. The storage device 1200 may change a setting value of the abnormal event check period field of the property of the storage device 1200 in response to the query request UPIU.

[0219] For example, the first abnormal event may be an abnormal event of too high temperature, an abnormal event of too low temperature, or a performance throttling abnormal event. In such an example, at the time point of receiving the second response UPIU, the EECC may have a first value (e.g., 100ms). For example, the second abnormal event may be an abnormal event of too high temperature, an abnormal event of too low temperature, or a performance throttling abnormal event. In such an example, the host 1100 may change the EECC to a second value (e.g., zero (0) seconds).

[0220] According to an embodiment, when an abnormal event associated with a temperature and / or performance throttling abnormal event occurs in the storage device 1200, the storage system 1000 may set the EECC to be relatively long. Therefore, the storage system 1000 may reduce system overhead caused by repeatedly checking events for abnormal events that have already been identified.

[0221] Fig.15 2 is a diagram showing a UFS system 2000 according to an embodiment. The UFS system 2000 may be a system conforming to the UFS standard announced by the Joint Electron Device Engineering Council (JEDEC). The UFS system 2000 may include a UFS host 2100, a UFS device 2200, and a UFS interface 2300. Fig.15 The architecture of the UFS system 2000 depicted in FIG. 1 is similar in many respects to the architecture of the UFS system 2000 described above with reference to FIG. Figure 1 The architecture of storage system 1000 is described, and may include additional features not mentioned above.

[0222] refer to Fig.15 , the UFS host 2100 may be connected to the UFS device 2200 through the UFS interface 2300. The UFS host 2100 may include a UFS host controller 2110, an application 2120, a UFS driver 2130, a host memory 2140, and a UFS interconnect (UIC) layer 2150. The UFS device 2200 may include a UFS device controller 2210, an NVM 2220, a storage interface (I / F) 2230, a device memory 2240, a UIC layer 2250, and a regulator 2260. The NVM 2220 may include a plurality of memory cells 2221. Although each memory cell 2221 may include a V-NAND flash memory having a two-dimensional (2D) structure or a three-dimensional (3D) structure, each memory cell 2221 may include another type of NVM, such as, but not limited to, PRAM and / or RRAM. The UFS device controller 2210 may be connected to the NVM 2220 through the storage interface 2230. The storage interface 2230 may be configured to comply with one or more standard storage protocols, such as, but not limited to, Toggle, Open NAND Flash Interface (ONFI), and the like.

[0223] The application 2120 may refer to a program that can communicate with the UFS device 2200 to use the functions of the UFS device. For example, the application 2120 may send an input-output request (IOR) for performing an input / output (I / O) operation on the UFS device 2200 to the UFS driver 2130. The IOR may refer to a data read request, a data storage (or write) request, and / or a data erase (or discard) request, but is not limited thereto.

[0224] The UFS driver 2130 may manage the UFS host controller 2110 through a UFS host controller interface (UFS-HCI). The UFS driver 2130 may convert the IOR generated by the application 2120 into a UFS command that complies with the UFS standard, and may send the UFS command to the UFS host controller 2110. One IOR may be converted into a plurality of UFS commands. Although the UFS command may be described by the SCSI standard, the UFS command may be a command that complies with the UFS standard.

[0225] The UFS host controller 2110 may transmit the UFS command converted by the UFS driver 2130 to the UIC layer 2250 of the UFS device 2200 through the UIC layer 2150 and the UFS interface 2300. During transmission of the UFS command, the UFS host register 2111 of the UFS host controller 2110 may function as a command queue (CQ).

[0226] The UIC layer 2150 on the UFS host 2100 side may include a Mobile Industry Processor Interface (MIPI) M-PHY 2151 and a MIPI UniPro 2152 , and the UIC layer 2250 on the UFS device 2200 side may further include a MIPI M-PHY 2251 and a MIPI-UniPro 2252 .

[0227] The UFS interface 2300 may include a line configured to transmit a reference clock signal REF_CLK, a line configured to transmit a hardware reset signal RESET_n for the UFS device 2200 , a line pair configured to transmit a differential input signal pair DIN_T and DIN_C, and a line pair configured to transmit a differential output signal pair DOUT_T and DOUT_C.

[0228] The frequency of the reference clock signal REF_CLK provided from the UFS host 2100 to the UFS device 2200 may be one of 19.2 megahertz (MHz), 26 MHz, 38.4 MHz, and 52 MHz, but is not limited thereto. The UFS host 2100 may change the frequency of the reference clock signal REF_CLK during operation. That is, during the data transmission and / or reception operation between the UFS host 2100 and the UFS device 2200, the UFS host 2100 may change the frequency. The UFS device 2200 may generate a clock signal having various frequencies from the reference clock signal REF_CLK provided from the UFS host 2100 by using a phase-locked loop (PLL). The UFS host 2100 may set the data rate between the UFS host 210 and the UFS device 2200 by using the frequency of the reference clock signal REF_CLK. That is, the data rate may be determined according to the frequency of the reference clock signal REF_CLK.

[0229] The UFS interface 2300 may support multiple channels, each of which may be implemented as a differential line pair. For example, the UFS interface 2300 may include at least one receiving channel and at least one transmitting channel. Fig.15 In the embodiment, the line pair configured to transmit the differential input signal pair DIN_T and DIN_C may constitute a receiving channel, and the line pair configured to transmit the differential output signal pair DOUT_T and DOUT_C ​​may constitute a transmitting channel. Fig.15 One transmit channel and one receive channel are shown, but the present disclosure is not limited thereto, and the number of transmit channels and the number of receive channels may be varied without departing from the scope of the present disclosure.

[0230] The receiving channel and the transmitting channel may transmit data based on a serial communication scheme. Due to the structure in which the receiving channel is separated from the transmitting channel, full-duplex communication between the UFS host 2100 and the UFS device 2200 may be enabled. That is, while receiving data from the UFS host 2100 through the receiving channel, the UFS device 2200 may transmit data to the UFS host 2100 through the transmitting channel. Alternatively or additionally, control data (e.g., commands) from the UFS host 2100 to the UFS device 2200 and user data to be stored in and / or read from the NVM 2220 of the UFS device by the UFS host 2100 may be transmitted through the same channel. Therefore, between the UFS host 2100 and the UFS device 2200, in addition to the receiving channel pair and the transmitting channel pair, it may not be necessary to further provide a separate channel for data transmission.

[0231] The UFS device controller 2210 of the UFS device 2200 may generally control the operation of the UFS device 2200. The UFS device controller 2210 may manage the NVM 2220 by using a logical unit (LU) 2211, which may be and / or may include a plurality of logical data storage units (e.g., the 0th logical data storage unit to the (N-1)th logical data storage unit, where N is a positive integer greater than zero (0)). The number of LUs 2211 may be 8 (e.g., N=8), but is not limited thereto. The UFS device controller 2210 may include a flash translation layer (FTL), and converts a logical data address (e.g., a logical block address (LBA)) received from the UFS host 2100 into a physical data address (e.g., a physical block address (PBA)) by using address mapping information of the FTL. A logical block configured to store user data in the UFS system 2000 may have a size within a predetermined range. For example, the minimum size of a logical block may be set to four (4) kilobytes (KB).

[0232] When a command from the UFS host 2100 is applied to the UFS device 2200 through the UIC layer 2250 , the UFS device controller 2210 may perform an operation in response to the command and transmit a completion response to the UFS host 2100 when the operation is completed.

[0233] For example, when the UFS host 2100 needs to store user data in the UFS device 2200, the UFS host 2500 may send a data storage command to the UFS device 2200. When receiving a response (e.g., a ready-to-transfer response) indicating that the UFS host 2100 is ready to receive user data (ready to transfer) from the UFS device 2200, the UFS host 2100 may send the user data to the UFS device 2200. The UFS device controller 2210 may temporarily store the received user data in the device memory 2240, and store the user data that may be temporarily stored in the device memory 2240 at a selected location of the NVM 2220 based on the address mapping information of the FTL.

[0234] As another example, when the UFS host 2100 intends to read user data stored in the UFS device 2200, the UFS host 2100 may send a data read command to the UFS device 2200. The UFS device controller 2210, which has received the command, may read the user data from the NVM 2220 based on the data read command, and temporarily store the read user data in the device memory 2240. During the read operation, the UFS device controller 2210 may detect and correct errors in the read user data by using an error control code (ECC) engine embedded therein. That is, the ECC engine may generate parity bits for write data to be written to the NVM 2220, and the generated parity bits may be stored in the NVM 2220 together with the write data. During the reading of data from the NVM 2220, the ECC engine may correct errors in the read data by using the parity bits read from the NVM 2220 together with the read data, and output error-corrected read data.

[0235] The UFS device controller 2210 may send user data that may be temporarily stored in the device memory 2240 to the UFS host 2100. The UFS device controller 2210 may further include an Advanced Encryption Standard (AES) engine. The AES engine may perform at least one of an encryption operation and a decryption operation on data sent to the UFS device controller 2210 by using a symmetric key algorithm.

[0236] The UFS host 2100 may sequentially store commands to be sent to the UFS device 2200 in a UFS host register 2111 that may be used as a common queue, and sequentially send the commands to the UFS device 2200. In such an example, the UFS host 2100 may send the next command in the CQ that is in a standby state to the UFS device 2200 even while the previously sent command is still being processed by the UFS device 2200, that is, even before receiving a notification that the previously sent command has been processed by the UFS device 2200. Therefore, during the processing of the previously sent command, the UFS device 2200 may also receive the next command from the UFS host 2100. The maximum number of commands (or queue depth) that can be stored in the CQ may be, for example, 32. In an embodiment, the CQ may be implemented as a cycle queue, in which the start and end of the command line stored in the queue may be indicated by a head indicator and a tail indicator.

[0237] Each of the plurality of memory cells 2221 may include a memory cell array and / or a control circuit configured to control the operation of the memory cell array. The memory cell array may include a 2D memory cell array and / or a 3D memory cell array. The memory cell array may include a plurality of memory cells. Although each memory cell may be a single-level cell (SLC) configured to store 1 bit of information, each memory cell may be a cell configured to store 2 bits or more of information, such as, but not limited to, a multi-level cell (MLC), a three-level cell (TLC), and a four-level cell (QLC). The 3D memory cell array may include a vertical NAND string in which at least one memory cell is vertically oriented and located on another memory cell.

[0238] Voltages VCC, VCCQ1, and VCCQ2 may be applied to the UFS device 2200 as power supply voltages. Voltage VCC may be a main power supply voltage for the UFS device 2200 and may be in a range of about 2.4 volts (V) to about 3.6 V. Voltage VCCQ1 may be a power supply voltage for mainly providing a low voltage to the UFS device controller 2210 and may be in a range of about 1.14 V to about 1.26 V. Voltage VCCQ2 may be a power supply voltage for providing a voltage that may be lower than voltage VCC and / or may be higher than voltage VCCQ1, mainly provided to an I / O interface such as MIPI M-PHY 2251, and may be in a range of about 1.7 V to about 1.95 V. The power supply voltage may be provided to the corresponding components of the UFS device 2200 through a regulator 2260. Regulator 2260 may be implemented as a group of unit regulators respectively connected to different power supply voltages among the above-mentioned power supply voltages.

[0239] FIG. 16A to FIG. 16C4 is a diagram depicting a form factor of a UFS card 4000 according to an embodiment. Fig.15 When the UFS device 2200 described above is implemented as a UFS card 4000, the appearance of the UFS card 4000 may be as follows: FIG. 16A to FIG. 16C shown.

[0240] Fig.16A is a top view of a UFS card 4000 according to an example embodiment. Fig.16A As you can see, the UFS card 4000 follows the shark-shaped design. Fig.16A As an example, the UFS card 4000 may have the sizes shown in the following Table 1.

[0241] project Dimensions (mm) T1 9.70 T2 15.00 T3 11.00 T4 9.70 T5 5.15 T6 0.25 T7 0.60 T8 0.75 T9 R0.80

[0242] Table 1: UFS card top view dimensions

[0243] Fig. 16B is a side view of a UFS card 4000 according to an example embodiment. Fig. 16B As an example, the UFS card 4000 may have the sizes shown in the following Table 2.

[0244] project Dimensions (mm) S1 0.74±0.06 S2 0.30 S3 0.52 S4 1.20 S5 1.05 S6 1.00

[0245] Table 2: UFS card side view dimensions

[0246] Fig. 16C is a bottom view of a UFS card 4000 according to an example embodiment. Fig. 16C , a plurality of pins for electrically contacting the UFS slot may be formed on the bottom surface of the UFS card 4000. The function of each pin is as follows. Based on the symmetry between the top and bottom surfaces of the UFS card 4000, with respect to the reference Fig.16A and some of the dimensions described in Table 1 (e.g., T1 to T5 and T9) can also be applied Fig. 16C 4 is a bottom view of a UFS card 400 shown in FIG.

[0247] A plurality of pins for electrical connection with a UFS host may be formed on the bottom surface of the UFS card 4000. Fig. 16C , the total number of pins may be 12. Each pin may have a rectangular shape, and the signal name corresponding to the pin may be as follows: Fig. 16C Detailed information about each pin can be understood by referring to Table 3 below and the description given above with reference to FIG5 .

[0248]

[0249]

[0250] Table 3: UFS card pin configuration

[0251] According to an embodiment of the present disclosure, when the abnormal event check cycle has passed, the host can determine whether an abnormal event has occurred in the storage device, so that the overhead caused by the process of handling the abnormal event is reduced. Therefore, a host operation method and a storage system operation method with potentially improved performance are provided.

[0252] While the present disclosure has been described with reference to the embodiments thereof, it will be apparent to one skilled in the art that various changes and modifications can be made therein without departing from the spirit and scope of the present disclosure as set forth in the appended claims.

Claims

1. An operating method of a host configured to control a storage device, the operating method comprising: receiving a first response universal flash memory (UFS) protocol information unit (UPIU) from the storage device, the first response UPIU including first event occurrence information indicating occurrence of a first abnormal event; Before the abnormal event check period elapses, receiving a second response UPIU from the storage device, the second response including second event occurrence information indicating the occurrence of a second abnormal event; as well as Processing of the second abnormal event is prevented based on the second abnormal event occurring before the abnormal event checking period elapses.

2. The operating method according to claim 1, further comprising: After the abnormal event check period has passed, receiving a third response UPIU from the storage device, the third response UPIU including third event occurrence information indicating the occurrence of a third abnormal event; as well as Based on the third event occurrence information, a type of the third abnormal event is checked.

3. The operating method according to claim 2, further comprising: Based on the first event occurrence information, checking the type of the first abnormal event; as well as Based on the type of the first abnormal event, an abnormal event checking period is adjusted.

4. The operating method according to claim 3, wherein: Adjustments to the abnormal event inspection cycle include: Based on the type of the first abnormal event associated with the temperature of the storage device and the performance throttling of the storage device, the abnormal event check period is changed from the first period to a second period, the second period being longer than the first period.

5. The operating method according to claim 2, further comprising: The abnormal event checking period is confirmed based on the abnormal event checking period fields of the plurality of attributes of the storage device.

6. The operating method according to claim 2, further comprising: based on the type of the first abnormal event being associated with at least one of a temperature of the storage device and a performance throttling of the storage device and the type of the third abnormal event being different from the type of the first abnormal event, processing the third abnormal event before processing the first abnormal event, and The first abnormal event is processed after the third abnormal event is processed.

7. The operating method according to claim 6, further comprising: Based on the matching of the type of the third abnormal event with the type of the first abnormal event, the first abnormal event is processed, and the processing of the third abnormal event is prevented.

8. The operating method according to claim 2, further comprising: A first entry corresponding to an operation of processing the first exception event is added to a work queue of the host.

9. The operating method according to claim 8, further comprising: Based on the type of the third exception event matching the type of the first exception event and the existence of the first entry in the work queue, a second entry corresponding to the operation of processing the third exception event is prevented from being added to the work queue.

10. The operating method according to claim 8, further comprising: Based on the type of the third exception event being different from the type of the first exception event, a second entry corresponding to an operation of processing the third exception event is added to the work queue.

11. The operating method according to claim 10, further comprising: At least one operation corresponding to each of the first entry and the second entry is performed based on a first priority of the first entry and a second priority of the second entry.

12. The operating method according to claim 3, wherein: The check on the type of the first abnormal event includes: Sending a first query request UPIU to the storage device; and A first query response UPIU corresponding to the first query request UPIU and including first event type information indicating a type of a first abnormal event is received from the storage device.

13. The operating method according to claim 3, wherein: The first response UPIU also includes first abnormal event type information indicating the type of the first abnormal event.

14. The operating method according to claim 13, wherein: The check on the type of the first abnormal event includes: Check the second field of the first response UPIU.

15. A method for operating a storage system, the method comprising: The host of the storage system sends a first command Universal Flash Storage (UFS) Protocol Information Unit (UPIU) to the storage device of the storage system; Based on the first command UPIU, the storage device sends a first response UPIU corresponding to the first command UPIU and including information indicating the occurrence of a first abnormal event to the host; The host sends a second command UPIU to the storage device; Based on the second command UPIU, the storage device sends a second response UPIU corresponding to the second command UPIU and including information indicating the occurrence of a second abnormal event to the host; and Processing of the occurrence of the second abnormal event is prevented by the host based on the abnormal event check period not having elapsed.

16. The operating method according to claim 15, further comprising: The host sends a third command UPIU to the storage device; Based on the third command UPIU, the storage device sends a third response UPIU including information indicating the occurrence of a third abnormal event to the host; as well as Based on the third response UPIU and based on the abnormal event check period lapse, occurrence of a second abnormal event is checked by the host.

17. The operating method according to claim 16, further comprising: Before sending the first command UPIU: The host sends a first query request UPIU to the storage device; Based on the first query request UPIU, the storage device sends a first query response UPIU corresponding to the first query request UPIU to the host; as well as The abnormal event check period included in the first query response UPIU is confirmed by the host based on the abnormal event check period fields of the plurality of attributes of the storage device.

18. An operating method of a Universal Flash Storage (UFS) host configured to control a UFS device, the operating method comprising: Confirm the abnormal event inspection cycle; receiving a first response UFS protocol information unit (UPIU) from the UFS device, the first response UPIU including information indicating an occurrence of a first abnormal event and information indicating a type of the first abnormal event; checking the occurrence of a first abnormal event and the type of the first abnormal event based on the first response UPIU; before the abnormal event check period elapses, receiving a second response UPIU from the UFS device, the second response UPIU including information indicating the occurrence of a second abnormal event and information indicating a type of the second abnormal event; as well as Processing of the second abnormal event is prevented based on the second abnormal event occurring before the abnormal event checking period elapses.

19. The operating method according to claim 18, further comprising: After the abnormal event check period has elapsed, receiving a third response UPIU from the UFS device, the third response UPIU including information indicating the occurrence of a third abnormal event and information indicating the type of the third abnormal event; as well as Based on the third response UPIU, occurrence of a third abnormal event and a type of the third abnormal event are checked.

20. The operating method according to claim 19, further comprising: Based on the matching of the type of the third abnormal event with the type of the first abnormal event, the first abnormal event is processed, and the processing of the third abnormal event is prevented.

Citation Information

Patent Citations

  • Current mirror circuits

    KR1020230123398A