Error detection/correction and fault detection/recovery – Pulse or data error handling – Digital data error correction
Reexamination Certificate
1999-05-14
2003-02-04
Ton, David (Department: 2133)
Error detection/correction and fault detection/recovery
Pulse or data error handling
Digital data error correction
C714S798000
Reexamination Certificate
active
06516440
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a printer and method of controlling the saving of information relating to printer operating conditions from volatile memory to nonvolatile memory, and a printer that employs the control method.
2. Description of the Related Art
Correct printer operation requires that the printer have access to information regarding its operating conditions, including certain status information such as the quantity of ink remaining, the time of the last head cleaning, print head location, the amount of roll paper remaining, and count values indicative of such things as the printed character count, the accumulated paper feed amount, and the total operating time. When the printer stops in the middle of a printing job due to some error or other event, such as the power switch being turned off, a power failure, or a printer reset, it is very desirable to know such status information so that the operating conditions of the printer at the time the interruption occurred can be determined and an appropriate process for recovering from the interruption executed.
In conventional printers, status information regarding printer operating conditions as described above (referred to as “printer status data” below) are maintained and updated in a volatile memory such as a DRAM, and saved at regular intervals to a nonvolatile memory such as an EEPROM (Electrically Erasable Programmable ROM), a flash memory, or other type of nonvolatile memory. Each time the printer resumes operation, the printer status data is copied from the nonvolatile memory into the volatile memory.
As noted above, printer status data is written into the nonvolatile memory at specific time intervals during the operation of the above-described conventional printer. More specifically, at the end of a predetermined time interval, as measured by an internal timer, whatever process the printer is currently performing is interrupted, and the printer CPU is diverted to the task of writing (saving) such data in the nonvolatile memory. By regularly saving the printer status data to the nonvolatile memory, the ability of the printer to recover from printing interruptions and restore the operating status of the printer to its pre-interruption state is improved.
It is obviously not possible to predict when an error or other interruption is going to occur. For this reason, it desirable for the interval between saves of printer status data to the nonvolatile memory to be as short as possible in order to assure that the most recent condition of the printer before an interruption occurs can be determined with the greatest possible accuracy.
When the printer CPU is executing a printing operation or otherwise processing data and is interrupted in order to execute the process of writing printer status data to the nonvolatile memory, the interrupted CPU task (printing or data processing in this example) stops until the writing process is completed. Printer throughput therefore decreases. As the amount of printer status data being tracked and saved to nonvolatile memory increases, the saving time also increases, and can increase to a level at which the decrease in printer throughput can no longer be ignored. It is therefore desirable that the time required for copying data from the volatile memory to the nonvolatile memory each time such data is saved be as short as possible irrespective of the amount of printer status data to be saved.
One of the problems with conventional saving methods is that they copy the entire content of the volatile memory into the nonvolatile memory whenever data saving is initiated, regardless of whether all printer status data in the volatile memory has changed since the last time it was saved. This is inefficient and also reduces the remaining service life of the nonvolatile memory which is inversely related to the number of write cycles to it per unit time. Thus, when data that has not changed is saved to the nonvolatile memory, the limited number of available write cycle operations is needlessly reduced. As a result, the total service life of the nonvolatile memory is potentially shortened.
OBJECTS OF THE INVENTION
Therefore, it is an object of the present invention to overcome the aforementioned problems.
It is another object of the present invention to shorten the time during which data is saved to nonvolatile memory and thereby reduce the adverse effect that the saving process has on normal printer operation.
It is a further object of the present invention to prevent the unnecessary saving of data to nonvolatile memory and thereby improve nonvolatile memory service life.
SUMMARY OF THE INVENTION
To achieve the above objects, the present invention provides a method for controlling the saving of information regarding printer operating conditions (printer status data) to the nonvolatile memory in the printer. Also provided is printer embodying the save control method. The method comprises the following steps:
(a) grouping the printer status data into a plurality of different data groups and pre-allocating each of the data groups to a corresponding one of a plurality of storage areas in both the printer's volatile memory and nonvolatile memory, wherein the saving of each data group to the nonvolatile memory is responsive to at least one of a plurality of trigger events; and
(b) generating a command to save a select number of data groups from the volatile memory to the nonvolatile memory when any one of the trigger events occurs; and
(c) saving a particular data group stored in its pre-allocated storage area in the volatile memory to its corresponding storage area in the nonvolatile memory in response to the generated save command when any one of the plurality of trigger events to which that data group is responsive occurs.
By selectively saving only to those storage areas in nonvolatile memory corresponding to a specific trigger event, and not saving to other parts of the nonvolatile memory at that time, the write time is shortened and nonvolatile memory life is improved.
The specific trigger events of this control method preferably include detection of a reset signal from a host computer. In this case, the printer is reset based on this reset signal after step (c).
Preferably, the specific trigger events further include: the lapse of a specific time interval, turning printer power on and off, and specific control events in printer operation. Specific control events in printer operation preferably include print head cleaning, ink cartridge or roll paper replacement, and such operating errors as an increase in print head temperature or disconnection of the carriage transportation belt.
Preferably, the printer status data saved to the nonvolatile memory is also divided into a first data set and a second data set where each data set comprises one or more data groups. In this case, there is an additional step (c)(1)of saving the first data set to the nonvolatile memory at the lapse of a specific time interval; and a step (c)(2)of saving the first and second data sets to the nonvolatile memory and reinitializing the specific time interval counter after a specific printer operation event occurs.
Much of the data saved to the nonvolatile memory is updated in response to the occurrence of a particular control operation, such as the events described above, occur. It is therefore possible to minimize damage from data loss when a problem occurs by writing to the nonvolatile memory after the control event has been completed. By also writing time interval responsive data to the nonvolatile memory at the same time, and also restarting the time counter, an increase in the frequency of data updates to the nonvolatile memory can be prevented.
An error detection code is preferably stored in each storage area, in which case there is also an additional step (d) of checking errors in the storage areas.
In this case, the error detection step checks for errors in the data of a particular storage area when that data is read from the nonvolatile memory and temporari
Gabrik Michael T.
Seiko Epson Corporation
Ton David
LandOfFree
Printer and a control method for saving data from volatile... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Printer and a control method for saving data from volatile..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Printer and a control method for saving data from volatile... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3160227