Electrical computers and digital processing systems: memory – Storage accessing and control – Specific memory composition
Reexamination Certificate
2001-01-29
2004-09-07
Bataille, Pierre (Department: 2186)
Electrical computers and digital processing systems: memory
Storage accessing and control
Specific memory composition
C713S002000
Reexamination Certificate
active
06789158
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates to a method of rewriting a boot program stored in a memory device into a new boot program, an apparatus of doing the same, and a recording medium storing a program therein for causing a computer to carry out the method or to act as the apparatus.
2. Description of the Related Art
There have been suggested a lot of methods of rewriting a program in a memory device, in particular, in a flash memory device.
For instance, Japanese Unexamined Patent Publication No. 11-96779 has suggested a method of rewriting a program in a flash memory device which method is capable of reducing the number of rewriting a program.
In the method, a header area and a program data area are arranged in each of blocks in a physical address associated with a flash memory device, and header areas and program data areas of the blocks are arranged in series in a logic address associated with a processor. When data stored in a program data area N is to be rewritten, it is usually necessary to rewrite a block in the program data area N and a block in the associated header area. However, the program data area N and the associated header area are located in the same block in the physical address of the flash memory device. Accordingly, only the block is rewritten.
Japanese Unexamined Patent Publication No. 11-316687, which is based on U.S. patent application Ser. No. 019178 filed on Feb. 5, 1999 and assigned to Compaq Computer Corporation, has suggested an apparatus for compensating for system error occurring while the system is in a start-up process.
The suggested apparatus is comprised of a read only memory (ROM), a non-volatile random access memory (RAM), and a central processing unit (CPU). The read only memory stores a plurality of bootable flash images, and includes a non-programmable boot block. The non-volatile random access memory stores status data indicative of which flash image was selected. The central processing unit tests as to whether the selected flash image is perfect. If perfect, the central processing unit carries out the selected flash image, and if not, the central processing unit newly selects another flash image. The central processing unit tests as to whether the thus newly selected flash image is perfect, and carries out the selected flash image only when it is perfect. In accordance with the apparatus, since an imperfect flash image is not carried out, it would be possible to automatically recover the system.
Japanese Unexamined Patent Publication No. 6-266552, which is based on U.S. patent application Ser. No. 695952 filed on May 6, 1992 and assigned to Intel Corporation, has suggested a computer system which is capable of dynamically modifying or updating a part of code or data stored in a non-volatile memory device, without detaching any parts such as a cover from the computer system.
Specifically, the computer system is comprised of a processor carrying out a process logic, a non-volatile memory device coupled to the processor and storing data and operating system process logic therein, means coupled to the processor for reading out what is stored in the non-volatile memory device, means coupled to the processor for erasing what is stored in the non-volatile memory device, means coupled to the processor for programming the non-volatile memory device, and means for updating operating system process logic which the operating system process logic is being carried out.
Japanese Unexamined Patent Publication No. 10-177527 has suggested a method of updating data in a flash memory which method avoids data from being erased or from being changed into different data, even if power supply is stopped during data is being updated.
Specifically, the method updates data stored in a flash memory from which data can be erased block by block, and into which data can be written byte by byte. In the method, a flash memory is divided into two blocks. A unit of data is alternately written into the two blocks. When data is to be read out of the two blocks, a latest data unit among data units properly written into the blocks is read out.
Japanese Unexamined Patent Publication No. 8-280679 has suggested a program memory device in which a program can be readily rewritten.
The program memory device is comprised of a flash memory storing various programs and including a plurality of areas into which data can be electrically written and from which data can be electrically erased, a connector arranged externally of the program memory device operating in accordance with a program, and electrically connecting the program memory device to a memory storing a new program to be newly stored into the program memory device, first means for selecting one of a program of the flash memory and the new program stored in the memory, second means for storing the new program into a non-used area in the flash memory, and assigning an executable address to the new program, and a primary memory storing data used for converting the address to be carried out in the second means, into an address of a program stored in the flash memory, data about a degree to which the flash memory is used, and data about a total number of rewriting the flash memory.
If electric power supply to a computer is stopped for some reasons while a boot program stored in the computer is being written, it would be impossible to restart the boot program.
Japanese Unexamined Patent Publication No. 8-255084, which is based on U.S. patent application Ser. No. 375,095 filed on Jan. 18, 1995 and assigned to Hewlett Packard Company, has suggested a method for preventing such a trouble.
FIGS. 1 and 2
are flow charts of the method suggested in Japanese Unexamined Patent Publication No. 8-255084.
Hereinbelow is explained the method in the assumption that a boot program stored in a primary boot block
0
is to be written into a new boot program.
As illustrated in FIG.
2
-(A), in an initial state, a boot program is stored in a primary boot block
0
, and data is stored in a substitution block
1
.
First, as illustrated in FIG.
2
-(B), data stored in the substitution block
1
is erased in step
300
.
Then, as illustrated in FIG.
2
-(C), a boot program stored in the primary boot block
0
is copied into the substitution block
1
in step
310
.
Then, a non-volatile memory block circuit (not illustrated) changes an address of the substitution block
1
to such an address that the substitution block
1
can be recognized as a boot block, in step
320
.
Then, as illustrated in FIG.
2
-(D), a boot program stored in the primary boot block
0
is erased in step
330
.
Then, as illustrated in FIG.
2
-(E), a new boot program is written into the primary boot block
0
in step
340
.
Then, the above-mentioned non-volatile memory block circuit (not illustrated) changes an address of the primary boot block
0
to such an address that the primary boot block
0
into which a new boot program has been stored can be recognized as a boot block, in step
350
.
Then, as illustrated in FIG.
2
-(F), the boot program which has been copied from the primary boot block
0
is erased from the substitution block
1
, in step
360
.
Thus, the substitution block
1
which is now empty can be used as an area for storing data therein. Hence, as illustrated in FIG.
2
-(G), data is stored into the substitution block
1
.
If a boot program has been properly rewritten in the primary boot block
0
, the primary boot block
0
absolutely becomes a boot area, as illustrated in FIG.
2
-(F). Accordingly, judgment as to whether a boot program has been properly rewritten is made by detecting whether the primary boot block
0
becomes a boot area. Hence, in the conventional method, a boot program has to be copied to the substitution block
1
from the primary boot block
0
, as having been explained above, resulting in that extra stress is exerted on a flash memory of the substitution block
1
.
In addition, in the conventional method having been explained with reference to
FIGS. 1 and 2
, it is necessary to copy a boot program
LandOfFree
Method of rewriting program in a flash microcomputer does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method of rewriting program in a flash microcomputer, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of rewriting program in a flash microcomputer will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3260301