Out-of-Bounds Recovery Circuit
US-2018107537-A1 · Apr 19, 2018 · US
US10817367B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10817367-B2 |
| Application number | US-201715784746-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 16, 2017 |
| Priority date | Oct 14, 2016 |
| Publication date | Oct 27, 2020 |
| Grant date | Oct 27, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Out-of-bounds recovery circuits configured to detect an out-of-bounds violation in an electronic device, and cause the electronic device to transition to a predetermined safe state when an out-of-bounds violation is detected. The out-of-bounds recovery circuits include detection logic configured to detect that an out-of-bounds violation has occurred when a processing element of the electronic device has fetched an instruction from an unallowable memory address range for the current operating state of the electronic device; and transition logic configured to cause the electronic device to transition to a predetermined safe state when an out-of-bounds violation has been detected by the detection logic.
Opening claim text (preview).
The invention claimed is: 1. An out-of-bounds recovery circuit for an electronic device operable in a boot operating state and a normal operating state, each such operating state having non-allowable memory addresses, the out-of-bounds recovery circuit comprising: detection logic configured to: monitor one or more control and/or data signals of the electronic device including a signal indicating whether a power on sequence is complete; determine that a current operating state of the electronic device is the boot operating state when the power on sequence is not complete; determine that the current operating state of the electronic device is the normal operating state when the power on sequence is complete; and detect an out-of-bounds violation in the electronic device, when the detection logic determines, based on the one or more control and/or data signals of the electronic device, a processing element of the electronic device has fetched an instruction from a non-allowable memory address for the current operating state of the electronic device; and transition logic configured to, in response to the detection logic detecting an out-of-bounds violation, cause the electronic device to transition to a predetermined safe state. 2. The out-of-bounds recovery circuit of claim 1 , wherein the one or more control and/or data signals includes a signal indicating a current value of a program counter of the processing element, and the detection logic is configured to determine the processing element has fetched an instruction from a non-allowable memory address for the current operating state of the electronic device when the current value of the program counter does not fall within at least one allowable memory address range for the current operating state of the electronic device. 3. The out-of-bounds recovery circuit of claim 1 , wherein the current operating state is a boot operating state in which the electronic device executes boot firmware. 4. The out-of-bounds recovery circuit of claim 1 , wherein each operating state is associated with one or more allowable memory address ranges. 5. The out-of-bounds recovery circuit of claim 4 , wherein the detection logic comprises address range generator logic configured to identify the one or more allowable memory address ranges associated with each operating state. 6. The out-of-bounds recovery circuit of claim 1 , wherein the detection logic comprises an out-of-bounds violation detected register, and the detection logic is configured to, in response to detecting an out-of-bounds violation, set the out-of-bounds violation detected register; and the transition logic is configured to determine that the detection logic has detected an out-of-bounds violation based on the out-of-bounds violation detected register. 7. The out-of-bounds recovery circuit of claim 1 , wherein the detection logic is configured to, in response to detecting an out-of-bounds violation, generate a signal indicating that the detection logic has detected an out-of-bounds violation, and the transition logic is configured to determine whether the detection logic has detected an out-of-bounds violation based on the generated signal. 8. The out-of-bounds recovery circuit of claim 1 , wherein the transition logic is configured to cause the electronic device to transition to the predetermined safe state by setting the state of the processing element to a particular state. 9. The out-of-bounds recovery circuit of claim 8 , wherein the particular state is an idle state. 10. The out-of-bounds recovery circuit of claim 1 , wherein the transition logic is configured to cause the electronic device to transition to a predetermined safe state by invoking an interrupt. 11. The out-of-bounds recovery circuit of claim 1 , wherein the transition logic is further configured to, in response to the detection logic detecting an out-of-bounds violation, invalidate the fetched instruction so that the processing element does not execute the instruction fetched from the non-allowable memory address. 12. The out-of-bounds recovery circuit of claim 1 , wherein the out-of-bounds recovery circuit is embodied in hardware on an integrated circuit. 13. An electronic device comprising a processing element and the out-of-bounds recovery circuit as set forth in claim 1 . 14. A non-transitory computer readable storage medium having stored thereon a computer readable description of an integrated circuit that, when processed in an integrated circuit manufacturing system, causes the integrated circuit manufacturing system to manufacture the out-of-bounds recovery circuit as set forth in claim 1 . 15. A method of recovering an electronic device from an out-of-bounds violation, the electronic device operable in a boot operating state and a normal operating state, each such operating state having non-allowable memory addresses, the method comprising: monitoring, by an out-of-bounds recovery circuit, one or more control and/or data signals of the electronic device including a signal indicating whether a power on sequence is complete; determining that a current operating state of the electronic device is the boot operating state when the power on sequence is not complete; determining that the current operating state of the electronic device is the normal operating state when the power on sequence is complete; detecting, by the out-of-bounds recovery circuit, an out-of-bounds violation in the electronic device when it is determined, from the one or more control and/or data signals of the electronic device, that a processing element of the electronic device has fetched an instruction from a non-allowable memory address for the current operating state of the electronic device; and in response to detecting an out-of-bounds violation, causing, by the out-of-bounds recovery circuit, the electronic device to transition to a predetermined safe state. 16. The method of claim 15 , wherein the one or more control and/or data signals includes a signal indicating a current value of a program counter of the processing element, and it is determined that the processing element has fetched an instruction from a non-allowable memory address for the current operating state of the electronic device when the current value of the program counter does not fall within at least one allowable memory address range for the current operating state of the electronic device. 17. A non-transitory computer readable storage medium having stored thereon computer readable instructions that, when executed at a computer system, cause the computer system to perform a method comprising: monitoring one or more control and/or data signals of an electronic device including a signal indicating whether a power on sequence is complete, the electronic device operable in a boot operating state and a normal operating state, each such operating state having non-allowable memory addresses; determining that a current operating state of the electronic device is the boot operating state when the power on sequence is not complete; determining that the current operating state of the electronic device is the normal operating state when the power on sequence is complete; detecting an out-of-bounds violation in the electronic device when it is determined, from the one or more control and/or data signals of the electronic device, that a processing element of the electronic device has fetched an instruction from a non-allowable memory address for the current operating state of the electronic device; and in response to detecting an out-of-bounds violation, causing the elect
during program execution, e.g. stack integrity {; Preventing unwanted data erasure; Buffer overflow} · CPC title
in a memory management context, e.g. virtual memory or cache management (memory management G06F12/00; testing of static memory units G11C29/00) · CPC title
Circuit design · CPC title
Spare resources, e.g. for permanent fault suppression · CPC title
Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.