IP Library › Granted Patent US 12,271,607
Granted Patent B2
US 12,271,607 · App. 18/318,416 · Granted Apr 8, 2025

Method for managing a zone of sensitive data in a flash memory

Inventor: Jawad Benhammadi (Pont de Claix, FR)
Assignee: STMicroelectronics (Alps) SAS
G06F3/0622G06F3/0604G06F3/0655G06F3/0679
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,271,607
App. No.
18/318,416
Granted
Apr 8, 2025
Kind
B2
Abstract

In an embodiment a method includes modifying or suppressing one or more data values of a non-volatile memory, wherein the one or more data values are stored in a first sector of the non-volatile memory, wherein the first sector is designated as a current sector by one or more selection values stored in the non-volatile memory, wherein modifying or suppressing comprises writing the one or more data values into a second sector of the non-volatile memory, and wherein the second sector is designated as an alternate sector by the one or more selection values.

Claims (56)

1. A method comprising:

modifying or suppressing one or more data values of a non-volatile memory,

wherein the one or more data values are stored in a first sector of the non-volatile memory,

wherein the first sector is designatable as a current sector or as an alternate sector by one or more selection values stored in the non-volatile memory,

wherein modifying or suppressing comprises writing the one or more data values into a second sector of the non-volatile memory,

wherein the second sector is designatable as the current sector or the alternate sector by the one or more selection values, and

wherein the one or more selection values comprises a first selection value stored in the first sector and a second selection value stored in the second sector; and

after powering up the non-volatile memory:

reading the first and second selection values;

determining, based on the first and second selection values, which sector of the first and second sectors is designated as the alternate sector; and

when a data value is stored in the alternate sector, reinitializing the alternate sector.

2. The method according to claim 1 , wherein modifying or suppressing comprises modifying, in association with a first address, a first data value stored at a first location of the first sector.

3. The method according to claim 2 , wherein writing the one or more data values into the second sector comprises writing a second data value to a first location of the second sector, the first location of the second sector being at least partly designated by the first address.

4. The method according to claim 1 , wherein modifying or suppressing comprises modifying other first data values, wherein the first sector comprises a first address range comprising the other first data values associated with a first level value as well as a second address range comprising second data values associated with a second level value, the second level value being greater than the first level value.

5. The method according to claim 4 , wherein modifying or suppressing comprises suppressing by:

generating the second level value by a monotonic counter;

writing the second data values in association with a first counting value in the second sector;

writing the second selection value into the second sector, designating the first sector as the alternate sector and the second sector as the current sector; and

reinitializing the first sector.

6. The method according to claim 1 , further comprising:

writing the second selection value into the second sector,

designating the first sector as the alternate sector and the second sector as the current sector; and

reinitializing the first sector.

7. The method according to claim 1 , further comprising, after writing one or more other data values into the second sector, modifying or suppressing the one or more other data values stored in the second sector, and writing a third selection value, different from the first and second selection values, into the first sector, designating the first sector as the current sector and the second sector as the alternate sector.

8. The method according to claim 7 , wherein each of the first, second, and third selection values is different from the other selection values by values of at least two bits.

9. The method according to claim 1 , further comprising:

reading a state of a bit stored in a register; and

writing the one or more data values into the current sector when the bit is in a first state; or

writing the one or more data values into the alternate sector when the bit is in a second state.

10. The method according to claim 1 , wherein the non-volatile memory is a FLASH-type memory.

11. A device comprising:

a non-volatile memory comprising:

a first sector configured to store one or more data values; and

a second sector,

wherein the non-volatile memory is configured to store one or more selection values designating the first sector as a current sector and the second sector as an alternate sector; and

an access controller configured to modify or suppress the one or more data values by writing one or more other data values into the second sector of the non-volatile memory; and

a monotonic counter configured to generate a level value,

wherein the first sector comprises a first address range comprising one or more other first data values associated with a first level value, and a second address range comprising second data values associated with a second level value, and

wherein the second level value is greater than the first level value.

12. The device according to claim 11 , wherein the access controller is configured to modify a first data value stored at a first location of the first sector, in association with a first address, by writing a second data value to a first location at the second sector of the non-volatile memory, and wherein the first location of the second sector is at least partly designated by the first address.

13. The device according to claim 11 , wherein the access controller is configured to suppress the one or more other first data values by:

writing second data values in association with a first counting value into the second sector;

writing a second selection value, designating the first sector as the alternate sector and the second sector as the current sector; and

reinitializing the first sector.

14. A method comprising:

modifying or suppressing one or more data values of a non-volatile memory,

wherein the one or more data values are stored in a first sector of the non-volatile memory,

wherein the first sector is designated as a current sector by one or more selection values stored in the non-volatile memory,

wherein modifying or suppressing comprises writing the one or more data values into a second sector of the non-volatile memory,

wherein the second sector is designated as an alternate sector by the one or more selection values; and

after writing one or more other data values into the second sector, modifying or suppressing the one or more other data values stored in the second sector, and writing a third selection value, different from a first selection value and a second selection value, into the first sector, designating the first sector as the current sector and the second sector as the alternate sector.

15. The method according to claim 14 , wherein each of the first, second, and third selection values is different from the other selection values by values of at least two bits.

16. The method according to claim 14 , wherein modifying or suppressing comprises modifying, in association with a first address, a first data value stored at a first location of the first sector.

17. The method according to claim 16 , wherein writing the one or more data values into the second sector comprises writing a second data value to a first location of the second sector, the first location of the second sector being at least partly designated by the first address.

18. The method according to claim 14 , wherein modifying or suppressing comprises modifying other first data values, wherein the first sector comprises a first address range comprising the other first data values associated with a first level value as well as a second address range comprising second data values associated with a second level value, the second level value being greater than the first level value.

19. The method according to claim 14 , wherein the non-volatile memory is a FLASH-type memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2023
From: BENHAMMADI, JAWAD
To: STMICROELECTRONICS (ALPS) SAS
Reel/Frame 063658/0302 →
Priority Claims (1)
FR 2205047 · May 25, 2022 · national
Continuity (1)
Related Publication 20230384953A1 · Nov 30, 2023
References Cited (23)
US 6611907B1 · Maeda · 2003 [cited by examiner]
US 8589764B2 · Takeuchi · 2013 [cited by examiner]
US 8621140B2 · Lee · 2013 [cited by examiner]
US 8631191B2 · Hashimoto · 2014 [cited by examiner]
US 9383926B2 · Law · 2016 [cited by examiner]
US 9799399B2 · Lee · 2017 [cited by examiner]
US 9886214B2 · Micheloni · 2018 [cited by examiner]
US 10554401B1 · Lee · 2020 [cited by examiner]
US 10719606B2 · Sanchez Diaz · 2020 [cited by examiner]
US 10887097B1 · Lee · 2021 [cited by examiner]
US 20090222500A1 · Chiu · 2009 [cited by examiner]
US 20130212323A1 · Hashimoto · 2013 [cited by examiner]
US 20200089894A1 · Liu · 2020 [cited by examiner]
US 20210004776A1 · Lee · 2021 [cited by examiner]
US 20210005114A1 · Lee · 2021 [cited by examiner]
US 20210006397A1 · Lee · 2021 [cited by examiner]
US 20210034355A1 · Montero et al. · 2021 [cited by applicant]
US 20210103653A1 · Numata · 2021 [cited by examiner]
WO 2009088709A2 · 2009 [cited by applicant]
A mobile phone-based context-aware video management application; Lahti et al.; Proceedings of the SPIE, vol. 6074, pp. 204-215; 2006; doi 10.1117/12.642204 (Year: 2006). [cited by examiner]
WebPod: persistent Web browsing sessions with pocketable storage devices. Potter et al. 2005. Proceedings of the 14th international conference on World Wide Web. ACM, pp. 603-612. https://doi.org/10.1145/1060745.1060833… [cited by examiner]
N. Ravi, C. Narayanaswami, M. Raghunath and M.-C. Rosu, “Securing Pocket Hard Drives,” in IEEE Pervasive Computing, vol. 6, No. 4, pp. 18-23, Oct.-Dec. 2007, doi: 10.1109/MPRV.2007.85. (Year: 2007). [cited by examiner]
N. Bin et al., “Research and design of Bootrom supporting secure boot mode,” 2020 International Symposium on Computer Engineering and Intelligent Communications (ISCEIC), Guangzhou, China, 2020, pp. 5-8, doi: 10.1109/IS… [cited by examiner]