System and method for updating in-system program
AssigneeSiliconmotion Inc.
InventorsChin-Wei Cheng, Wen-Chung Chang
Life of this patent
Estimating the term…
Abstract
A system for updating In-System Program (ISP) comprises an ISP loader that is called when an Interrupt Function Table is matched, an ISP RAM space has run out, or a page fault has happened. When an Interrupt Function Table is matched, a Function is partially updated; when an ISP RAM space has run out, a Function is executed; and when a page fault has happened, the page fault address is recorded and the page fault is corrected.
Claims25
A system for updating an ISP, comprising:
- an ISP Loader for loading the ISP from a Flash to a RAM Buffer;
- and
- an Interrupt Function Table,
- wherein, the ISP Loader is called to update only part of a Function if the ISP is determined to match an address of the Interrupt Function Table while executing a step for comparing with the Interrupt Function Table.
A system for updating an ISP, comprising:
- an ISP Loader that loads an ISP from a Flash to a RAM Buffer,
- wherein the ISP Loader is called to continue executing a Function if an ISP RAM is determined to have run out while executing a step for determining the space of the ISP RAM.
A system for updating an ISP, comprising:
- an ISP Loader that loads the ISP from a Flash to a RAM Buffer,
- wherein the ISP Loader is called to correct a page fault, if the page fault is determined to have arisen, while executing a step for determining the page fault.
A method for updating an ISP, comprising:
- a step for detecting existence of a Flash;
- a step for detecting an ISP block to be updated if the Flash is detected to exist;
- a step for loading the ISP block into a RAM being an ISP RAM sequentially if the ISP to be updated exists in the Flash;
- a step for setting an existing flag of the ISP;
- a step for executing the main initial program of ROM;
- a step for determining the existence of an ISP flag;
- a step for executing the ISP, wherein the executing process jumps to an address marked in the ISP RAM and executes the ISP if the ISP flag is determined to exist;
- a step for determining whether a next ISP block is called;
- and
- a step for swapping an ISP from the Flash into the ISP RAM if the next ISP block is determined to exist.
A method for updating an ISP, comprising:
- a step for executing ROM code;
- a step for comparing the ISP with an Interrupt Function Table to determine whether an address of the ISP matches the Interrupt Function Table;
- a step for calling an ISP Loader if the ISP is determined to match the address of the Interrupt Function Table;
- and
- a step for executing a Function.
A method for updating an ISP, comprising:
- a step for executing ROM code;
- a step for determining whether a space of an ISP RAM has run out;
- a step for calling an ISP Loader if the space of the ISP RAM is determined to have run out;
- and
- a step for executing a Function.
A method for updating an ISP, comprising:
- a step for executing ROM code;
- a step for determining whether a page fault arises in a RAM buffer;
- a step for calling an ISP Loader if the page fault is determined to have arisen in the RAM buffer;
- and
- a step for executing a Function.
Dependencies are inferred from the claim text.