Device and method for automatically detecting and announcing error on booting a motherboard

A device for automatic error detection on booting a motherboard includes a storage device, and an automatic error detection speech unit. The storage device stores BIOS program code and a system status table for the motherboard, the BIOS program code being executed by a processor when the motherboard is booting, the system status table of the motherboard storing at least one motherboard element status, the motherboard status being updated by the processor when the motherboard is turned on in accordance with current conditions of the booting. The automatic error detection speech unit couples to the storage device for reading the system status table of the motherboard after a predetermined time period of the motherboard being turned on, and playing corresponding speech data in accordance with the motherboard status of the system status table for the motherboard.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a device and method for automatically detecting and announcing error on booting a motherboard and, more particularly, to a speech device and method that performs automatic error detection for every element on the motherboard and announces the detected error.

2. Description of the Related Art

FIG. 1is a block diagram of the hardware structure of a conventional motherboard for a personal computer. The motherboard comprises a processor110, a north-bridge120, a south-bridge130, an AC97 codec140, a BIOS150and a detection output device170. The BIOS150is connected to the south-bridge130via an LPC bus160. When the motherboard is turned on, the processor110executes some diagnostics to decide if elements on the motherboard are functioning correctly. If an element on the motherboard is functioning correctly, the processor110sets the corresponding operating parameters for this element; if this element fails the diagnostic, the processor110outputs a corresponding code and the detection output device170plays a corresponding audio signal or displays a corresponding error message.

The detection output device170is used to output a detection result when the motherboard is booting, and whether the detection output device170can be working properly or not depends on the processor status at booting procedure. However, the typical motherboard is assembled with different name brands of processors having different clock settings, and so when the processor is malfunctioning or has an incorrect clock setting, the detection output device170will not receive an error message from the processor110. Therefore, the detection output device170cannot inform the user of any potential errors.

Therefore, it is desirable to provide a device and method for automatically detecting and announcing error on booting a motherboard to mitigate and/or obviate the aforementioned problems.

SUMMARY OF THE INVENTION

A main objective of the present invention is to provide a device and method for automatically detecting and announcing error on booting a motherboard, which can perform automatic error detection for every element on the motherboard when the motherboard is turned on and announce the detected error.

In accordance with one aspect of the present invention, there is provided a device for automatically detecting and announcing error on booting a motherboard. The device includes a storage device, and an automatic error detection speech unit. The storage device stores BIOS program code and a system status table for the motherboard, the BIOS program code being executed by a processor when the motherboard is booting, the system status table of the motherboard storing at least one motherboard element status, the motherboard status being updated by the processor based on booting the motherboard when the motherboard is turned on. The automatic error detection speech unit couples to the storage device for reading the system status table of the motherboard after a predetermined time period of the motherboard being turned on, and playing corresponding speech data in accordance with the motherboard element status of the system status table for the motherboard.

In accordance with another aspect of the present invention, there is provided a device for automatically detecting and announcing error on booting a motherboard. The device comprises a south-bridge chip, a storage device and an automatic error detection speech unit. The south-bridge chip connects to and uses for managing other peripheral devices of the motherboard. The storage device stores BIOS program code and a system status table for the motherboard, the BIOS program code being executed by the processor when the motherboard is turned on, the system status table of the motherboard storing at least one motherboard element status, the motherboard status being updated by the processor based on booting the motherboard when the motherboard is turned on. The automatic error detection speech unit couples to the storage device for reading the system status table of the motherboard after a predetermined time period of the motherboard being turned on and playing corresponding speech data in accordance with the motherboard element status of the system status table of the motherboard.

In accordance with further aspect of the present invention, there is provided a method for automatically detecting and announcing error on booting a motherboard. The motherboard includes a processor, a storage device and an automatic error detection speech unit. The storage device stores BIOS program code and a system status table of the motherboard. The automatic error detection speech unit couples to the storage device for reading the system status table of the motherboard after a predetermined time period since the motherboard being turned on. The method includes (A) booting the motherboard; (B) determining whether the processor is function normally; and (C) when step (B) determines that the processor is function abnormally, the automatic error detection speech unit plays corresponding speech data in accordance with the motherboard element status based on the system status table of the motherboard.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Please refer toFIG. 2.FIG. 2is a block diagram of a device for automatically detecting and announcing error on booting a motherboard in accordance with the present invention. The device comprises a south-bridge210, a storage device220, an automatic error detection speech unit230and a speaker240. The storage device220is mounted on the motherboard and is used for storing a BIOS program code221and a system status table222of the motherboard. The BIOS program code221is executed by the processor when the motherboard is turned on, and the system status table222of the motherboard stores at least one motherboard element status value.

The automatic error detection speech unit230has a timer231and is coupled to the storage device220. The automatic error detection speech unit230is used for reading the system status table222of the motherboard after a predetermined time period has elapsed since the motherboard was turned on, and plays corresponding speech data in accordance with the motherboard status value of the system status table222of the motherboard.

In a preferred embodiment of the present invention, the storage device220and the automatic error detection speech unit230are connected to the south-bridge210via the LPC bus260. The storage device220and the automatic error detection speech unit230can also be connected to the south-bridge210via an I2C bus.

Please refer toFIG. 3.FIG. 3is an operational flowchart of the device for automatically detecting and announcing error on booting a motherboard in accordance with the present invention. In step S310, when a user presses a power button or a reset button to turn on the personal computer, the timer231starts to count the elapsed time. In step S320, if the processor110is functioning normally, step S330will be performed. In step S330, the processor110reads and executes a command at a predetermined address (such as 0xFFFFFFF0Hor 0x00000000H), and the address is usually mapped to a BIOS. The processor110executes setup procedures for the processor, such as setting up the memory management unit (MMU).

In step S340, the processor110executes a diagnostic procedure on an element in accordance with the BIOS program code. In step S350, the processor110determines if the element has passed the test; if the element passes, step S380is executed for checking the diagnostic procedure is finished or not; if the element does not pass, step360is performed. In step360, the processor110writes a corresponding error code for the element into the system status table222, and then step370is performed. In step S380, the processor checks the diagnostic procedure is finished or not. If the diagnostic procedure is finished, then step S390is performed, otherwise the step S340is performed.

As shown inFIG. 4, in the system status table222, 00 . . . 000B is a predetermined value, which indicates a turned off condition, 10 . . . 000B indicates a normal turned on condition, 00 . . . 001B indicates error1, 00 . . . 010B indicates error2, and so forth. For example, when the processor110detects that the element1cannot function normally, the processor110writes a corresponding error code (00 . . . 001B) for the element1into the system status table222. In this design, the system status table222only requires a bytes of memory.

In step S370, since there is already one failed element, the processor110halts execution. In step S390, the processor writes a corresponding normal turned on condition code 10 . . . 000B for the element1into the system status table222. In step S400, the processor110reads from a hard disk to download code for an operating system into memory so the computer can boot the operating system.

When the timer231times out, the automatic error detection speech unit230reads the system status table222. In step S320, if the processor110is unable to function normally, the system status table222will not be updated and a predetermined value 00 . . . 000B stored in the system status table222is read by the automatic error detection speech unit230. The automatic error detection speech unit230extracts a speech signal corresponding to the predetermined value 00 . . . 000B from the memory and sends the speech signal to the speaker240. Therefore, even if the processor110does not function normally, the automatic error detection speech unit230of the present invention can still inform the user that the processor110has failed.

Similarly, when the timer231times out and the automatic error detection speech unit230reads that the value of the system status table222is 00 . . . 001B, the automatic error detection speech unit230extracts a speech signal corresponding to the error code 00 . . . 001B from the memory and sends the speech signal to the speaker240.

In view of the foregoing, the present invention adds the automatic error detection speech unit230onto the LPC bus250and utilizes the system status table222to record the test results of every element on the motherboard, so the automatic error detection speech unit230reads the system status table222to play corresponding speech signals when the timer times out. Therefore, the present invention can provide the user with error messages even when the processor has failed.