IP Library Granted Patent US 11,055,165
Granted Patent B2
US 11,055,165 · App. 16/695,968 · Granted Jul 6, 2021

Shadow memory checking

Inventors: Nicolas Rigoni (Buenos Aires, AR); Fernando Orge (Buenos Aires, AR); Lucas Intile (Buenos Aires, AR); Nicolás Rafael Biberidis (Barcelona, ES); Leandro Tozzi (Buenos Aires, AR)
Assignee: Allegro MicroSystems, LLC
G06F11/0772G06F9/30134G06F9/546G06F11/1068G06F11/167G06F11/3037G06F13/1668
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 11,055,165
App. No.
16/695,968
Granted
Jul 6, 2021
Kind
B2
Abstract

In one aspect, an integrated circuit (IC) includes a multiplexor configured to receive data from a non-volatile memory and configured to receive data from a shadow memory, a shift register configured to generate a first signature from the data received from the non-volatile memory and configured to generate a second signature from the data received from the shadow memory; a signature storage configured to store the first signature; and a shadow memory checking controller configured to enable the multiplexor to send the data from the non-volatile memory to the shift register, and send a command to reload the shadow memory with data from the non-volatile memory in response to receiving an error flag. The IC also includes a comparator circuit configured to compare the first signature and the second signature and configured to send the error flag in response to the first signature and the second signature being different.

Claims (58)

1. An integrated circuit (IC) comprising:

a multiplexor configured to receive data from a non-volatile memory and configured to receive data from a shadow memory, wherein the shadow memory mirrors the non-volatile memory;

a shift register configured to generate a first signature from the data received from the non-volatile memory and configured to generate a second signature from the data received from the shadow memory;

a signature storage configured to store the first signature;

a shadow memory checking controller configured to:

enable the multiplexor to send the data from the non-volatile memory to the shift register; and

send a command to reload the shadow memory with data from the non-volatile memory in response to receiving an error flag; and

a comparator circuit configured to compare the first signature and the second signature and configured to send the error flag in response to the first signature and the second signature being different.

2. The IC of claim 1 , wherein the shift register is a multiple input shift register (MISR).

3. The IC of claim 1 , wherein the non-volatile memory is an electrically erasable programmable read-only memory (EEPROM).

4. The IC of claim 1 , further comprising a memory controller configured to receive the command to reload the shadow memory and to reload the shadow memory with data from the non-volatile memory in response to receiving the command.

5. The IC of claim 1 , wherein the shadow memory is volatile memory.

6. The IC of claim 1 , wherein the shadow memory checking controller is further configured to enable the multiplexor to switch from sending the data from the non-volatile memory to sending the data from the shadowed memory to the shift register.

7. The IC of claim 1 , wherein the data from the shadow memory is at least one of data for oscillator trimming, bandwidth selection and frequency response adjustment of digital filters, fault masking or data for selection of a communication protocol.

8. A method, comprising:

receiving data from a non-volatile memory;

determining a first signature of the received data from the non-volatile memory;

storing the first signature;

receiving data from a shadow memory, wherein the shadow memory mirrors the non-volatile memory;

determining a second signature from the received data from the shadow memory;

comparing the first signature to the second signature; and

sending at least one of an error message or a command to reload the shadow memory with data from the non-volatile memory in response to the first signature and the second signature being different.

9. The method of claim 8 , further comprising enabling a multiplexor to send data from the non-volatile memory to a shift register.

10. The method of claim 8 , further comprising enabling the multiplexor to switch from sending the data from the non-volatile memory to sending the data from the shadowed memory to the shift register.

11. The method of claim 9 , wherein enabling a multiplexor to send data from the non-volatile memory to the shift register comprises enabling the multiplexor to send data from an electrically erasable programmable read-only memory (EEPROM) to a multiple input shift register (MISR).

12. The method of claim 8 , wherein sending at least one of an error message or a command to reload the shadow memory with data from the non-volatile memory in response to the first signature and the second signature being different comprises:

sending an error flag to a first controller; and

sending a command to reload the shadow memory to a second controller from the first controller in response to receiving the error flag, wherein the second controller copies data from the non-volatile memory to the shadow memory in response to receiving the command.

13. The method of claim 8 , wherein receiving data from the shadow memory comprises receiving data from a volatile memory.

14. An article comprising:

a processor; and

a non-transitory machine-readable medium that stores executable instructions, the instructions causing the processor to:

receive data from a non-volatile memory;

determine a first signature of the received data from the non-volatile memory;

store the first signature;

receive data from a shadow memory, wherein the shadow memory mirrors the non-volatile memory;

determine a second signature from the received data from the shadow memory;

compare the first signature to the second signature; and

send at least one of an error message or a command to reload the shadow memory with data from the non-volatile memory in response to the first signature and the second signature being different.

15. The article of claim 14 , further comprising instructions causing the processor to enable a multiplexor to send data from the non-volatile memory to a shift register.

16. The article of claim 15 , wherein the instructions to enable a multiplexor to send data from the non-volatile memory to the shift register comprises instructions to enable the multiplexor to send data from an electrically erasable programmable read-only memory (EEPROM) to a multiple input shift register (MISR).

17. The article of claim 14 , wherein the instructions to send at least one of an error message or a command to reload the shadow memory with data from the non-volatile memory in response to the first signature and the second signature being different comprises instructions to:

send an error flag to a first controller; and

send a command to reload the shadow memory to a second controller from the first controller in response to receiving the error flag, wherein the second controller copies data from the non-volatile memory to the shadow memory.

18. The article of claim 14 , wherein the shadow memory is a volatile memory.

19. An integrated circuit (IC) comprising:

a multiplexor configured to receive data from a non-volatile memory and configured to receive data from a shadow memory, wherein the shadow memory mirrors a non-volatile memory;

a shift register configured to generate a first signature from the data received from the non-volatile memory and configured to generate a second signature from the data received from the shadow memory;

a signature storage configured to store the first signature;

a shadow memory checking controller configured to:

enable the multiplexor to send the data from the non-volatile memory to the shift register; and

send a command to reload the shadow memory with data from the non-volatile memory in response to receiving an error flag; and

a comparator circuit configured to compare the first signature and the second signature and configured to send the error flag in response to the first signature and the second signature being different,

wherein the non-volatile memory is an electrically erasable programmable read-only memory (EEPROM), and the shadow memory is a volatile memory.

20. The IC of claim 19 , wherein the shift register is a multiple input shift register (MISR),

wherein the shadow memory checking controller is further configured to enable the multiplexor to switch from sending the data from the non-volatile memory to sending the data from the shadowed memory to the shift register,

wherein the data from the shadow memory is at least one of data for oscillator trimming, bandwidth selection and frequency response adjustment of digital filters, fault masking or data for selection of a communication protocol.

21. The IC of claim 20 , further comprising a memory controller configured to receive the command to reload the shadow memory and to reload the shadow memory with data from the non-volatile memory in response to receiving the command.

Assignments (6)
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 053957/FRAME 0874 Recorded Nov 1, 2023
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: ALLEGRO MICROSYSTEMS, LLC
Reel/Frame 065420/0572 →
RELEASE OF SECURITY INTEREST IN PATENTS (R/F 053957/0620) Recorded Jun 22, 2023
From: MIZUHO BANK, LTD., AS COLLATERAL AGENT
To: ALLEGRO MICROSYSTEMS, LLC
Reel/Frame 064068/0360 →
PATENT SECURITY AGREEMENT Recorded Jun 22, 2023
From: ALLEGRO MICROSYSTEMS, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS THE COLLATERAL AGENT
Reel/Frame 064068/0459 →
PATENT SECURITY AGREEMENT Recorded Oct 1, 2020
From: ALLEGRO MICROSYSTEMS, LLC
To: MIZUHO BANK LTD., AS COLLATERAL AGENT
Reel/Frame 053957/0620 →
PATENT SECURITY AGREEMENT Recorded Oct 1, 2020
From: ALLEGRO MICROSYSTEMS, LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 053957/0874 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2019
From: RIGONI, NICOLAS; ORGE, FERNANDO; INTILE, LUCAS; BIBERIDIS, NICOLÁS RAFAEL; TOZZI, LEANDRO; ALLEGRO MICROSYSTEMS ARGENTINA S.A.
To: ALLEGRO MICROSYSTEMS, LLC
Reel/Frame 051169/0872 →
Continuity (1)
Related Publication 20210157669A1 · May 27, 2021
Cited By (1)
US 12,592,703