US 7,555,678 B2
System for booting from a non-XIP memory utilizing a boot engine that does not have ECC capabilities during booting
Ming-Shiang Lai, Hsin-Chu (Taiwan); and Yung-Chun Lei, Hsin-Chu (Taiwan)
Assigned to MediaTek Inc., Hsin-Chu Hsien (Taiwan)
Filed on Mar. 23, 2006, as Appl. No. 11/277,349.
Prior Publication US 2007/0226548 A1, Sep. 27, 2007
Int. Cl. G06F 11/00 (2006.01)
U.S. Cl. 714—36  [713/1; 713/2] 13 Claims
OG exemplary drawing
 
1. A booting system, comprising:
a non-XIP memory, for storing a plurality of operation system (OS) images, wherein the OS images comprise a source image and a plurality of duplicates of the source image, and a boot loader code;
an XIP memory, coupled to the non-XIP memory; and
a code shadowing module, coupled to the non-XIP memory and the XIP memory, for shadowing the boot loader code to the XIP memory, executing the shadowed boot loader code to carry out error detection (EDC) checking on at least one OS image stored in the non-XIP memory, and shadowing a specific OS image to the XIP memory if no errors are detected when carrying out EDC checking on the specific OS image, wherein the code shadowing module does not have error correction (ECC) capabilities during booting;
wherein if at least a specific part of an OS image does not pass EDC checking, the code shadowing module shadows error-free parts of the OS image to the XIP memory, carries out EDC checking on at least a duplicate of the specific part, and then shadows an error-free part corresponding to the specific part to the XIP memory.