IP Library › Granted Patent US 12,367,114
Granted Patent B2
US 12,367,114 · App. 18/338,001 · Granted Jul 22, 2025

Storage system, storage device, and monitoring method

Inventors: Taewook Heo (Suwon-si, KR); Suckhyun Nam (Suwon-si, KR); Ho-Jin Chun (Suwon-si, KR); Minha Kim (Suwon-si, KR)
Assignee: Samsung Electronics Co., Ltd.
G06F11/1479
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,367,114
App. No.
18/338,001
Granted
Jul 22, 2025
Kind
B2
Abstract

Some example embodiments provide a storage device including a non-volatile memory; a microcontroller unit configured to monitor statuses of constituent elements of the storage device and output an abnormality signal based on the constituent elements not being in a normal status; and a storage controller configured to perform a first check and a second check different from the first check on a first firmware code stored in the microcontroller unit in response to the abnormality signal and perform recovery by using a second firmware code stored in the non-volatile memory based on at least one of the first check and the second check having failed.

Claims (54)

1. A storage device comprising:

a non-volatile memory;

a microcontroller unit configured to

monitor statuses of constituent elements of the storage device, and

output an abnormality signal based on the constituent elements not being in a normal status; and

a storage controller configured to

perform a first check and a second check, a check type of the second check being different from a check type of the first check, on a first firmware code stored in the microcontroller unit in response to the abnormality signal, and

perform recovery by using a second firmware code stored in the non-volatile memory based on at least one of the first check and the second check having failed.

2. The storage device of claim 1 , wherein

the storage controller is configured to report the abnormality signal to a host based on the first check and the second check being successful.

3. The storage device of claim 1 , wherein

the storage controller is configured to check a communication status of the microcontroller unit as the first check.

4. The storage device of claim 3 , wherein

the storage controller is configured to transmit an interrupt request to the microcontroller unit and check the communication status based on a response of the microcontroller unit to the interrupt request.

5. The storage device of claim 4 , wherein

the interrupt request is a request for version information of an MCU firmware code of the microcontroller unit, and

the storage controller is configured to compare first version information received from the microcontroller unit with second version information stored in the non-volatile memory in response to the interrupt request.

6. The storage device of claim 5 , wherein

the storage controller is configured to determine that the check of the communication status is successful based on the first version information and the second version information matching and determine that the check of the communication status has failed based on the first version information and the second version information being different.

7. The storage device of claim 1 , wherein

the storage controller is configured to check a reset vector of the microcontroller unit as the first check.

8. The storage device of claim 7 , wherein

the storage controller is configured to request an address of the reset vector from the microcontroller unit and compare a first address received from the microcontroller unit with a second address stored in the non-volatile memory in response to the request.

9. The storage device of claim 8 , wherein

the storage controller is configured to determine that the check of the reset vector is successful based on the first address and the second address matching and determine that the check of the reset vector has failed based on the first address and the second address being different.

10. The storage device of claim 1 , wherein

the storage controller is configured to compare the first firmware code with the second firmware code as the second check.

11. The storage device of claim 10 , wherein

the storage controller is configured to determine that the second check is successful based on the first firmware code and the second firmware code matching and determine that the second check has failed based on the first firmware code and the second firmware code being different.

12. The storage device of claim 1 , wherein

the microcontroller unit is configured to determine that an input voltage of each of the constituent elements is normal based on the input voltage being within a first voltage range.

13. The storage device of claim 1 , further comprising

a power loss protection (PLP) device,

wherein the microcontroller unit is configured to monitor cap health of a capacitor of the PLP device, and determine that the cap health is normal based on the cap health being within a first time range.

14. The storage device of claim 13 , wherein

the microcontroller unit is configured to monitor a remaining time in a sudden power off (SPO) situation, and determine that the PLP device is normal based on the remaining time being longer than or equal to a reference time.

15. The storage device of claim 1 , wherein

the storage controller is configured to record a recovery count after performing recovery, determine whether the recovery count is less than a reference value based on receiving the abnormality signal from the microcontroller unit, and perform recovery based on the recovery count being less than the reference value.

16. The storage device of claim 1 , wherein

the storage controller is configured to compare a third firmware code and the second firmware code recorded in the microcontroller unit after the recovery, and instruct the microcontroller unit to stop monitoring based on the second firmware code and the third firmware code being different.

17. A monitoring method comprising:

selecting at least one code area from code areas based on an abnormality report from a microcontroller unit, the code areas including a main code syntax code area, an interrupt syntax code area, and a reset vector code area;

determining whether there is a failure by checking the selected at least one code area of the microcontroller unit in response to the abnormality report from the microcontroller unit;

performing recovery based on the microcontroller unit being abnormal; and

transmitting the abnormality report to a host based on the microcontroller unit being normal.

18. The monitoring method of claim 17 , wherein

the determining whether there is the failure includes checking at least one of the main code syntax code area, the interrupt syntax code area, and the reset vector code area.

19. The monitoring method of claim 18 , wherein

the checking of the at least one includes:

performing a first check on at least one of the interrupt syntax code area or the reset vector code area; and

performing, based on the first check passing, a second check on the main code syntax code area, the interrupt syntax code area, and the reset vector code area.

20. A storage controller controlling a storage device, comprising:

a microcontroller unit configured to monitor statuses of constituent elements of the storage device and output an abnormality signal based on the constituent elements not being in a normal status; and

a processor configured to perform a first check and a second check, a check type of the second check being different from a check type of the first check, on a first firmware code stored in the microcontroller unit in response to the abnormality signal and performs recovery based on at least one of the first check and the second check having failed.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE THIRD INVENTOR'S NAME PREVIOUSLY RECORDED ON REEL 64207 FRAME 301. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 18, 2025
From: HEO, TAEWOOK; NAM, SUCKHYUN; CHUN, HO-JIN; KIM, MINHA
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 070890/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 5, 2023
From: HEO, TAEWOOK; NAM, SUCKHYUN; CHU, HO-JIN; KIM, MINHA
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 064207/0301 →
Priority Claims (1)
KR 10-2022-0187356 · Dec 28, 2022 · national
Continuity (1)
Related Publication 20240220376A1 · Jul 4, 2024
References Cited (11)
US 7594135B2 · Gonzalez et al. · 2009 [cited by applicant]
US 11222698B2 · You et al. · 2022 [cited by applicant]
US 11249689B2 · Ostrikov et al. · 2022 [cited by applicant]
US 11409606B2 · Park et al. · 2022 [cited by applicant]
US 20170220404A1 · Polar Seminario · 2017 [cited by examiner]
US 20210096840A1 · Kotary et al. · 2021 [cited by applicant]
US 20210218562A1 · Grobelny · 2021 [cited by examiner]
US 20220179960A1 · Spangler · 2022 [cited by applicant]
US 20230027848A1 · Hong et al. · 2023 [cited by applicant]
KR 20140015030A · 2014 [cited by applicant]
KR 20220092973A · 2022 [cited by applicant]