Method and System for Securely Updating Field Upgradeable Units
US-2017250818-A1 · Aug 31, 2017 · US
US10282189B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10282189-B2 |
| Application number | US-201615198412-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 30, 2016 |
| Priority date | Jun 30, 2016 |
| Publication date | May 7, 2019 |
| Grant date | May 7, 2019 |
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.
In a method of updating program code in an external non-volatile memory, updated program code is received at an Application Specific Integrated Circuitry (ASIC). The updated program code is received from a host device. The updated program code is stored in a volatile memory of the ASIC. The ASIC performs operations. The updated program code is copied from the volatile memory to a non-volatile memory while performing the operations. The non-volatile memory is located external to the ASIC.
Opening claim text (preview).
What is claimed is: 1. A method of updating program code in an external non-volatile memory, said method comprising: at an application specific integrated circuitry (ASIC) of an input device, receiving updated program code from a host device, wherein the host device is external to the input device and communicatively coupled to the input device; storing said updated program code in a volatile memory of said ASIC; executing instructions of the updated program code in the volatile memory, the instructions performing operations comprising acquiring and processing touch data with said ASIC, wherein the touch data is acquired from sensing electrodes of the input device; determining whether the touch data has been acquired from all the sensing electrodes being driven; in response to determining that the touch data has not been acquired from all the sensing electrodes, writing a block of the updated program code from the volatile memory to a non-volatile memory of the input device; and in response to determining that the touch data has been acquired from all the sensing electrodes, processing the acquired touch data to determine a presence of an input object near the input device. 2. The method of claim 1 , further comprising: based on determining that all blocks of the updated program code have been written from the volatile memory to the non-volatile memory of the input device, sending a completion message from said ASIC to said host device. 3. The method of claim 1 , wherein said receiving updated program code from a host device comprises: receiving said updated program code from said host device upon boot-up of said ASIC. 4. The method of claim 1 , wherein said acquiring the touch data and said writing the block of the updated program code at least partially overlap in time. 5. The method of claim 1 , wherein said acquiring the touch data comprises: driving sensor electrodes for capacitive sensing. 6. An application specific integrated circuit (ASIC) of an input device, the ASIC comprising: a volatile memory; a first communication interface coupled with a host device, said host device external to said ASIC and to said input device; a second communication interface coupled with said volatile memory and with a non-volatile memory, said non-volatile memory located in the input device, external to said ASIC; and a processor coupled with said volatile memory, said first communication interface, and said second communication interface, said processor configured to: receive updated program code from said host device via said first communication interface; store said updated program code in said volatile memory; execute instructions of the updated program code in the volatile memory, the instructions performing operations comprising acquiring and processing touch data, wherein the touch data is acquired from sensing electrodes of the input device; determine whether the touch data has been acquired from all the sensing electrodes being driven; in response to determining that the touch data has not been acquired from all the sensing electrodes, write a block of the updated program code from the volatile memory to the non-volatile memory of the input device; and in response to determining that the touch data has been acquired from all the sensing electrodes, process the acquired touch data to determine a presence of an input object near the input device. 7. The ASIC of claim 6 , wherein said acquiring the touch data comprises: driving sensor electrodes for capacitive sensing. 8. The ASIC of claim 6 , wherein a first speed of communication of said updated program code between said host device and said ASIC is faster than a second speed of communication of said updated program code between said ASIC and said non-volatile memory. 9. The ASIC of claim 6 , wherein said acquiring the touch data and said writing the block of the updated program code at least partially overlap in time. 10. The ASIC of claim 6 , wherein said updated program code comprises information selected from the list of information consisting of: ASIC configuration information; touch sensing frequency information; display operation information; sensor electrode drive information: and capacitive sensing mode information. 11. A processing system for a capacitive sensing input device, said processing system comprising: a volatile memory; and a processor coupled with said volatile memory, said processor configured to: receive updated program code from a host device, wherein the host device is external to the capacitive sensing input device and communicatively coupled to the capacitive sensing input device; store said updated program code in said volatile memory; execute instructions of the updated program code in the volatile memory, the instructions performing operations comprising acquiring and processing touch data, wherein the touch data is acquired from sensing electrodes of the capacitive sensing input device; determine whether the touch data has been acquired from all the sensing electrodes being driven; in response to determining that the touch data has not been acquired from all the sensing electrodes, write a block of the updated program code from the volatile memory to a non-volatile memory of the capacitive sensing input device; and in response to determining that the touch data has been acquired from all the sensing electrodes, process the acquired touch data to determine a presence of an input object near the capacitance sensing input device. 12. The processing system of claim 11 , wherein acquiring the touch data comprises driving sensor electrodes for capacitive sensing. 13. The processing system of claim 11 , wherein said processor is further configured to: based on determining that all blocks of the updated program code have been written from the volatile memory to the non-volatile memory of the capacitive sensing input device, send a completion message to said host device. 14. The processing system of claim 11 , wherein a first speed of storing said updated program code in said volatile memory is faster than a second speed of copying said updated program code from said volatile memory to said non-volatile memory. 15. The processing system of claim 11 , wherein said acquiring the touch data and said writing the block of the updated program code at least partially overlap in time. 16. The processing system of claim 11 , wherein said updated program code comprises information selected from the list of information consisting of: application specific integrated circuit (ASIC) configuration information; touch sensing frequency information; display operation information; sensor electrode drive information; and capacitive sensing mode information. 17. The method of claim 1 , further comprising: prior to making the determination that the touch data has been acquired from all the sensing electrodes, writing additional blocks of the updated program code from the volatile memory to the non-volatile memory of the input device. 18. The ASC of claim 6 , wherein prior to making the determination that the touch data has been acquired from all the sensing electrodes, additional blocks of the updated program code are written from the volatile memory to the non-volatile memory of the input device. 19. The processing system of claim 11 , wherein prior to making the determination that the touch data has been acquired from all the sensing electrodes, additional blocks of the updated program code are written from the volatile memory to the nonvolati
Replication mechanisms · CPC title
Updates (security arrangements therefor G06F21/57) · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.