Computing register with non-volatile-logic data storage
AssigneeTexas Instruments Incorporated
InventorsAdolf Baumann, Mark Jung
Life of this patent
Estimating the term…
Abstract
A digital system includes a non-volatile calculating register having a set of latches configured to perform a calculation. A set of non-volatile storage cells is coupled to the set of latches. Access detection logic is coupled to the calculating register and is operable to initiate a calculation of a next value by the calculating register each time the calculating register is accessed by an accessing module. The access detection logic is operable to cause the next value to be stored in the set of non-volatile storage cells at the completion of the calculation as an atomic transaction. After a power loss or other restore event, the contents of the calculating register may be restored from the non-volatile storage cells.
Claims20
A circuit comprising:
- a computing register configured to couple to a data bus;
- a non-volatile storage array coupled to the computing register;
- a control register;
- and
- control logic coupled to the computing register and the non-volatile storage array, and configured to, in response to a write instruction directed to the control register via the data bus, perform a non-disruptable transaction, the non-disruptable transaction comprising:
- storing a first value in the computing register and the non-volatile storage array;
- causing the computing register to perform a computation on the first value to produce a second value;
- and
- storing the second value in the non-volatile storage array.
A circuit comprising:
- a computing register configured to couple to a data bus;
- a non-volatile storage array coupled to the computing register;
- control logic coupled to the computing register and the non-volatile storage array, and configured to, in response to an instruction received by the computing register via the data bus:
- store a first value in the computing register and the non-volatile storage array;
- cause the computing register to perform a computation on the first value to produce a second value;
- and
- store the second value in the non-volatile storage array;
- and
- write inhibit logic coupled to the computing register and configured to:
- store a count of accesses of the computing register;
- and
- adjust the count of accesses in response to the instruction, wherein the control logic is configured to, in response to the instruction, cause the count of accesses to be stored in the non-volatile storage array after the adjustment of the count of accesses by the write inhibit logic.
A method comprising:
- receiving an instruction;
- and
- in response to the instruction:
- storing a first value in a computing register and a non-volatile storage array coupled to the computing register;
- computing a second value based on the first value;
- storing the second value in the computing register and the non-volatile storage array;
- adjusting a count of accesses;
- and
- storing the adjusted count of accesses in the non-volatile storage array.
Dependencies are inferred from the claim text.