IP Library Granted Patent US 12,366,973
Granted Patent B1
US 12,366,973 · App. 18/415,964 · Granted Jul 22, 2025

Reliable non-volatile memory download approach

Inventors: Naren Kumar Sahoo (Frisco, TX); Pavan Nallamothu (Little Elm, TX); Christiana Kapatsori (Chicago, IL); Yamu Hu (Allen, TX); David McClure (Carrollton, TX)
Assignee: STMicroelectronics International N.V.
G06F3/0619G06F3/0658G06F3/0673
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,366,973
App. No.
18/415,964
Granted
Jul 22, 2025
Kind
B1
Abstract

According to an embodiment, a method includes adjusting a reference generator into a first configuration based on a temporary trim value resulting, in a first reference voltage and a first reference current being generated for a first memory. The method further includes performing an integrity check on an initial set of data downloaded from the first memory based on the first reference voltage and the first reference current. The initial set of data includes a first trim value. The method further includes downloading contents from the first memory into a second memory in response to a successful integrity check after adjusting the reference generator into a second configuration. In the second configuration, the reference generator generates a second reference voltage and a second reference current for the first memory. The reference generator is adjusted by the first trim value in response to a successful integrity check.

Claims (41)

1. A method, comprising:

adjusting, by a controller, a reference generator into a first configuration, wherein, in the first configuration, the reference generator is configured to generate a first reference voltage and a first reference current for a first memory, the reference generator adjusted by a temporary trim value in the first configuration;

performing, by the controller, a download integrity check on an initial set of data downloaded from the first memory based on the first reference voltage and the first reference current, the initial set of data comprising a first trim value; and

downloading, by the controller, contents from the first memory into a second memory in response to a successful download integrity check after adjusting the reference generator into a second configuration, wherein, in the second configuration, the reference generator is configured to generate a second reference voltage and a second reference current for the first memory, the reference generator adjusted by the first trim value in response to a successful download integrity check.

2. The method of claim 1 , further comprising initializing the second memory to a default configuration in response to receiving a power on reset signal.

3. The method of claim 1 , wherein the temporary trim value is a pre-defined trim value from a set of pre-defined trim values accessible to the controller.

4. The method of claim 1 , further comprising transitioning a finite state machine (FSM) circuit of the controller from one state to a next in response to an unsuccessful download integrity check, wherein, in each state, the FSM circuit adjusts the reference generator based on a different temporary trim value.

5. The method of claim 1 , wherein the first memory is a non-volatile memory, and wherein the second memory is a volatile memory.

6. The method of claim 1 , wherein the initial set of data comprises a passkey, the first trim value, an inverted first trim value, or a combination thereof, wherein a successful download integrity check comprises verifying, by the controller, that the passkey matches a pre-determined value, that the inverted first trim value is an inverted value of the first trim value, or a combination thereof.

7. The method of claim 1 , further comprising:

storing the first trim value in the second memory after determining a successful download integrity check; and

adjusting the reference generator into the second configuration based on the first trim value stored in the second memory.

8. A circuit, comprising:

a reference generator configured to generate a reference voltage and a reference current, wherein the reference voltage, the reference current, or both are adjustable based on a trim value;

a first memory configured to store a first trim value for the reference generator in an initial set of data;

a second memory; and

a controller configured to:

determine a temporary trim value to be forwarded to the reference generator;

perform a download integrity check on the initial set of data downloaded from the first memory based on a first reference voltage and a first reference current provided by the reference generator after being adjusted based on the temporary trim value; and

download a second set of data from the first memory to the second memory based on a second reference voltage and a second reference current provided by the reference generator after being adjusted based on the first trim value in response to a successful download integrity check.

9. The circuit of claim 8 , where the second memory is initialized to a default configuration in response to receiving a power on reset signal.

10. The circuit of claim 8 , wherein the temporary trim value is a pre-defined trim value from a set of pre-defined trim values accessible to the controller.

11. The circuit of claim 8 , wherein the controller comprises a finite state machine (FSM) circuit, the FSM circuit configured to transition from one state to a next in response to an unsuccessful download integrity check, wherein, in each state, the FSM circuit adjusts the reference generator based on a different temporary trim value.

12. The circuit of claim 8 , wherein the first memory is a non-volatile memory, and wherein the second memory is a volatile memory.

13. The circuit of claim 8 , wherein the initial set of data comprises a passkey, the first trim value, an inverted first trim value, or a combination thereof, wherein a successful download integrity check comprises verifying, by the controller, that the passkey matches a pre-determined value, that the inverted first trim value is an inverted value of the first trim value, or a combination thereof.

14. The circuit of claim 8 , wherein the controller is further configured to download the first trim value to the second memory after determining a successful download integrity check, and wherein the reference generator is adjusted based on the first trim value stored in the second memory.

15. A device, comprising:

a processor; and

a circuit, comprising:

a reference generator configured to generate a reference voltage and a reference current, wherein the reference voltage, the reference current, or both are adjustable based on a trim value;

a first memory configured to store a first trim value for the reference generator in an initial set of data;

a second memory accessible by the processor; and

a controller configured to:

determine a temporary trim value to be forwarded to the reference generator;

perform a download integrity check on the initial set of data downloaded from the first memory based on a first reference voltage and a first reference current provided by the reference generator after being adjusted based on the temporary trim value; and

download a second set of data from the first memory to the second memory based on a second reference voltage and a second reference current provided by the reference generator after being adjusted based on the first trim value in response to a successful download integrity check.

16. The device of claim 15 , where the second memory is initialized to a default configuration in response to receiving a power on reset signal.

17. The device of claim 15 , wherein the temporary trim value is a pre-defined trim value from a set of pre-defined trim values accessible to the controller.

18. The device of claim 15 , wherein the controller comprises a finite state machine (FSM) circuit, the FSM circuit configured to transition from one state to a next in response to an unsuccessful download integrity check, wherein, in each state, the FSM circuit adjusts the reference generator based on a different temporary trim value.

19. The device of claim 15 , wherein the first memory is a non-volatile memory, and wherein the second memory is a volatile memory.

20. The device of claim 15 , wherein the initial set of data comprises a passkey, the first trim value, an inverted first trim value, or a combination thereof, wherein a successful download integrity check comprises verifying, by the controller, that the passkey matches a pre-determined value, that the inverted first trim value is an inverted value of the first trim value, or a combination thereof.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2024
From: STMICROELECTRONICS, INC.
To: STMICROELECTRONICS INTERNATIONAL N.V.
Reel/Frame 068433/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2024
From: SAHOO, NAREN KUMAR; NALLAMOTHU, PAVAN; KAPATSORI, CHRISTIANA; HU, YAMU; MCCLURE, DAVID
To: STMICROELECTRONICS, INC.
Reel/Frame 067159/0776 →
References Cited (13)
US 7571379B2 · Bombaci et al. · 2009 [cited by applicant]
US 9190988B1 · Gupta · 2015 [cited by examiner]
US 9683904B2 · Matsumoto · 2017 [cited by applicant]
US 11195571B2 · Eom · 2021 [cited by applicant]
US 11397669B2 · Chung · 2022 [cited by applicant]
US 11581027B2 · Shih · 2023 [cited by applicant]
US 11593489B2 · Shi · 2023 [cited by applicant]
US 11823755B2 · Mondello · 2023 [cited by applicant]
US 20090021985A1 · Byeon · 2009 [cited by examiner]
US 20090154250A1 · Lin · 2009 [cited by examiner]
US 20160350164A1 · Cunningham · 2016 [cited by examiner]
US 20180074532A1 · Mandal · 2018 [cited by examiner]
US 20230049928A1 · Yun · 2023 [cited by applicant]