Control system, mainboard and electronic equipment
By designing a control system in electronic devices, using the combination of multiple storage areas and indicators, the problem of the device not being able to start normally after power outage is solved, and the uncorrupted BIOS files are quickly found and executed, saving maintenance and startup costs. Improve user experience.
Patent Information
- Application Number
- CN202411529783.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-30
- Publication Date
- 2025-02-18
AI Technical Summary
When an electronic device powers up again after power down, it may execute corrupted BIOS files, causing the device to fail to start normally, increasing the maintenance cost and startup time cost.
A control system is designed, including a control module and a first storage module. By storing BIOS files in the first storage area and the second storage area, and storing indicators in the third storage area, the control module responds to the reset signal and determines the BIOS. The status of the file, so that uncorrupted BIOS files can be quickly found and executed.
Ensure that when the electronic device powers up again after power down, it can execute uncorrupted BIOS files, achieve normal startup, save maintenance costs and startup time costs, and improve user experience.
Smart Images

Figure CN119473412A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of chip technology, and in particular to a control system, a mainboard and an electronic device. Background Art
[0002] The Basic Input / Output System (BIOS) is the first software that runs when an electronic device starts up. The BIOS is responsible for initializing the computer hardware, testing whether the computer hardware functions properly, and ensuring that they work properly. In addition, the BIOS is also responsible for starting the operating system. When the BIOS is normal, the electronic device can be used normally after executing the BIOS. The performance of an electronic device depends largely on whether the BIOS it uses is advanced. Therefore, in order to ensure the performance of the electronic device, it is usually necessary to update the BIOS in a timely manner.
[0003] During the BIOS update process, the BIOS file is damaged. For example, if the electronic device suddenly loses power, the electronic device can only execute the damaged BIOS after it is powered on again. The electronic device cannot start normally, and the damaged BIOS file cannot be repaired by itself. It can only be repaired by professional maintenance personnel, which increases the maintenance cost and startup time cost, and is very inconvenient for users.
[0004] Therefore, how to enable an electronic device to execute an intact BIOS file when it is powered on again after power failure so that the electronic device can be used normally, save maintenance costs and startup time costs, and improve user experience has become a research hotspot in this field. Summary of the invention
[0005] In view of this, the present disclosure proposes a control system, a mainboard and an electronic device. The control system can quickly find and execute an undamaged BIOS file, so when it is set in an electronic device, the undamaged BIOS file can be executed after the electronic device is powered off and then powered on again, so that the electronic device can be used normally, saving maintenance costs and startup time costs, and improving the user experience.
[0006] According to one aspect of the present disclosure, a control system is provided, the system comprising a control module and a first storage module, the first storage module comprising a first storage area, a second storage area and a third storage area, the first storage area and the second storage area respectively storing BIOS files, the third storage area storing a first identifier, the first identifier indicating whether the BIOS file stored in the first storage area is damaged, when the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, the control module is used to, in response to a first reset signal being in an invalid state, read the first identifier from the third storage area; when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, read the BIOS file from the first storage area and execute it; when the first identifier indicates that the BIOS file stored in the first storage area is damaged, read the BIOS file from the second storage area and execute it.
[0007] In one possible implementation, the first storage module includes a first memory and a second memory, the first storage area and the third storage area are located in the first memory, and the second storage area is located in the second memory; the system also includes a multiplexer, and the control module selects to connect to one of the first memory and the second memory through the multiplexer.
[0008] In a possible implementation, the first storage module includes a third memory, the first storage area, the second storage area, and the third storage area are located in the third memory, and the control module is directly connected to the third memory.
[0009] In one possible implementation, the control module includes a first controller, which stores a second identifier, wherein the second identifier indicates access to a storage area on the first memory when the second identifier is in a first state, and indicates access to a storage area on the second memory when the second identifier is in a second state. In an initial state, the second identifier is in a first state, and the first controller is used to connect the multiplexer to the first memory when the second identifier is in a first state, and to connect the multiplexer to the second memory when the second identifier is in a second state; and in response to the first reset signal being in an invalid state, read the first identifier from the third storage area.
[0010] In one possible implementation, the control module includes a first controller, which stores a second identifier, which indicates access to the first storage area when the second identifier is in a first state, and which indicates access to the second storage area when the second identifier is in a second state. In an initial state, the second identifier is in a first state.
[0011] In one possible implementation, the control module also includes a processor, and the first controller is further used to set the second identifier to a first state when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, and to set the second identifier to a second state when the first identifier indicates that the BIOS file stored in the first storage area is damaged; the processor is used to access the corresponding storage area through the first controller according to the indication of the second identifier, read the BIOS file and execute it.
[0012] In one possible implementation, the processor executes a BIOS file update program, and the processor is also used to, when executing the BIOS file update program, copy the BIOS file stored in the first storage area to the second storage area before updating the BIOS file stored in the first storage area; when starting to update the BIOS file stored in the first storage area, set the second identifier to the second state, and when the BIOS file stored in the first storage area is updated, set the second identifier to the first state.
[0013] In one possible implementation, the processor is also used to query the status of the second identifier before the BIOS file update program starts executing; when the second identifier is in a first state, continue to execute the BIOS file update program; when the second identifier is in a second state, stop executing the BIOS file update program.
[0014] In one possible implementation, the system also includes a second storage module, and the processor is specifically used to, when the second identifier is in the first state, read the BIOS file from the first storage area according to the indication of the second identifier, write the read BIOS file into the second storage module, and set the second identifier to the second state after the writing is completed; read the BIOS file from the second storage module, write the read BIOS file into the second storage area according to the state of the second identifier, and set the second identifier to the first state after the writing is completed; make the first identifier indicate that the BIOS file stored in the first storage area is damaged, and start updating the BIOS file stored in the first storage area; when the BIOS file stored in the first storage area is updated, make the first identifier indicate that the BIOS file stored in the first storage area is not damaged; and restart the system.
[0015] In one possible implementation, the processor executes a BIOS file update result check program, and the processor is also used to, in response to the BIOS file update result check program starting to execute, query the status of the second identifier; when the second identifier is in the first state, read the BIOS file from the first storage module according to the indication of the second identifier, and check whether the read BIOS file is the latest version; when the read BIOS file is not the latest version, re-execute the BIOS file update program; when the read BIOS file is the latest version, execute the read BIOS file.
[0016] In one possible implementation, the processor is also used to, when the second identifier is in the second state, set the second identifier to the first state, re-execute the steps of making the first identifier indicate that the BIOS file stored in the first storage area is damaged, and start updating the BIOS file stored in the first storage area and subsequent steps.
[0017] According to another aspect of the present disclosure, a mainboard is provided, comprising the control system described above.
[0018] According to another aspect of the present disclosure, an electronic device is provided, comprising the mainboard described above.
[0019] According to the control system of the embodiment of the present disclosure, by storing BIOS files in the first storage area and the second storage area respectively, storing the first identifier in the third storage area, the first identifier indicates whether the BIOS file stored in the first storage area is damaged, so that the control system can record the state of the BIOS file stored in the first storage area; the control module responds to the first reset signal being in an invalid state, reads the first identifier from the third storage area, and when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, reads the BIOS file from the first storage area and executes it, so that when the BIOS stored in the first storage area is not damaged, the BIOS file executed by the control module is an undamaged BIOS file; when the first identifier indicates that the BIOS file stored in the first storage area is damaged, reads the BIOS file from the second storage area and executes it, when the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, so that when the BIOS file stored in the first storage area is damaged, the BIOS file executed by the control module is also an undamaged BIOS file. In this case, regardless of whether the BIOS stored in the first storage area is damaged due to the update, the BIOS file executed by the control module is an undamaged BIOS file. After the electronic device loses power and is powered on again, the undamaged BIOS file can be executed so that the electronic device can be used normally, saving maintenance costs and startup time costs; because the control system can quickly find and execute the undamaged BIOS file, there is no need to execute the BIOS file first to determine whether the BIOS file is damaged, so the startup time cost can be further saved. In summary, when the control system of the embodiment of the present disclosure is set in an electronic device, it can save the maintenance cost and startup time cost of the electronic device and improve the user experience.
[0020] Further features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the disclosure and, together with the description, serve to explain the principles of the disclosure.
[0022] Figure 1 An exemplary application scenario of a control system according to an embodiment of the present disclosure is shown.
[0023] Figure 2 A schematic diagram showing the structure of a control system according to an embodiment of the present disclosure.
[0024] Figure 3 A schematic diagram showing the structure of a first storage module according to an embodiment of the present disclosure.
[0025] Figure 4 A schematic diagram showing the structure of a control module according to an embodiment of the present disclosure.
[0026] Figure 5 A schematic diagram showing the structure of a first storage module according to an embodiment of the present disclosure.
[0027] Figure 6a A schematic diagram showing the structure of a control module according to an embodiment of the present disclosure.
[0028] Figure 6b A schematic diagram showing the structure of a control module according to an embodiment of the present disclosure.
[0029] Figure 7 A schematic diagram showing a BIOS file update process according to an embodiment of the present disclosure.
[0030] Figure 8a A schematic diagram showing the structure of a control system according to an embodiment of the present disclosure.
[0031] Figure 8b An example of information transmitted on a bus between a first storage module and a first controller according to an embodiment of the present disclosure is shown.
[0032] Figure 8c An example of information transmitted on a bus between a first storage module and a first controller according to an embodiment of the present disclosure is shown.
[0033] Figure 8d An example of information transmitted on a bus between a first storage module and a first controller according to an embodiment of the present disclosure is shown.
[0034] Fig. 9 An exemplary execution method of the BIOS file update result checking program when the control system loses power between time T1 and time T2 according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0035] Various exemplary embodiments, features and aspects of the present disclosure will be described in detail below with reference to the accompanying drawings. The same reference numerals in the accompanying drawings represent elements with the same or similar functions. Although various aspects of the embodiments are shown in the accompanying drawings, the drawings are not necessarily drawn to scale unless otherwise specified.
[0036] The word “exemplary” is used exclusively herein to mean “serving as an example, example, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
[0037] In addition, in order to better illustrate the present disclosure, numerous specific details are given in the following specific embodiments. It should be understood by those skilled in the art that the present disclosure can also be implemented without certain specific details. In some examples, methods, means, components and circuits well known to those skilled in the art are not described in detail in order to highlight the subject matter of the present disclosure.
[0038] The BIOS file may be damaged during the BIOS update process. The prior art proposes a dual BIOS solution. When the electronic device is powered off and then powered on again, the main BIOS is executed by default. It is determined whether the main BIOS fails to execute (if the main BIOS has not been executed within a certain period of time, it is considered that the main BIOS has failed to execute). If the main BIOS fails to execute, it will switch to the slave BIOS for execution. Therefore, there is still a large startup time cost. In addition, the slave BIOS may also fail to execute, so there may also be maintenance costs.
[0039] In view of this, the present disclosure proposes a control system, a mainboard and an electronic device. The control system can quickly find and execute an undamaged BIOS file, so when it is set in an electronic device, the undamaged BIOS file can be executed after the electronic device is powered off and then powered on again, so that the electronic device can be used normally, saving maintenance costs and startup time costs, and improving the user experience.
[0040] Figure 1 An exemplary application scenario of a control system according to an embodiment of the present disclosure is shown.
[0041] like Figure 1 As shown, in an exemplary application scenario, the control system may be arranged on a mainboard of an electronic device. The electronic device may be a terminal device or a server.
[0042] Exemplarily, the control system can store two BIOS files. The two BIOS files will not be updated at the same time. When the electronic device is powered off normally and then restarted, both BIOS files are in an undamaged state. When the BIOS file needs to be updated, the control system can execute a BIOS file update program to update the BIOS file. When the electronic device accidentally loses power and restarts, at least one BIOS file is not damaged. The control system can find the undamaged BIOS file and execute it, so that the electronic device can start normally. After the electronic device starts normally, the control system can execute a BIOS file update result check program. If it is determined that the update fails, the control system can re-execute the BIOS file update program.
[0043] Those skilled in the art should understand that more BIOS files can be stored in the control system as long as at least one BIOS file is not damaged at the same time. The embodiments of the present disclosure do not limit how many BIOS files are stored in the control system.
[0044] The following introduces an exemplary structure and an exemplary workflow of the control system of an embodiment of the present disclosure.
[0045] In a possible implementation, an embodiment of the present disclosure provides a control system, the system comprising a control module and a first storage module, the first storage module comprising a first storage area, a second storage area and a third storage area, the first storage area and the second storage area respectively storing BIOS files, the third storage area storing a first identifier, the first identifier indicating whether the BIOS file stored in the first storage area is damaged, when the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged,
[0046] The control module is used to
[0047] In response to the first reset signal being in an invalid state, reading a first identifier from a third storage area;
[0048] When the first identifier indicates that the BIOS file stored in the first storage area is not damaged, reading the BIOS file from the first storage area and executing it;
[0049] When the first identifier indicates that the BIOS file stored in the first storage area is damaged, the BIOS file is read from the second storage area and executed.
[0050] Figure 2 A schematic diagram showing the structure of a control system according to an embodiment of the present disclosure.
[0051] For example, if Figure 2 As shown, the control system may include a control module and a first storage module.
[0052] The first storage module may include three storage areas, wherein the first storage area and the second storage area may store BIOS files respectively. The BIOS files stored in the first storage area and the second storage area will not be updated at the same time, that is, when the BIOS files stored in the first storage area are damaged, the BIOS files stored in the second storage area are not damaged.
[0053] The third storage area can store a first identifier 0x2000[0], and the first identifier can indicate whether the BIOS file stored in the first storage area is damaged. The state of the first identifier changes with the update progress of the BIOS file stored in the first storage area. Exemplarily, the first identifier can be a 1-bit value, and when the value is 0b', it indicates that the BIOS file stored in the first storage area is damaged (that is, 0x2000[0]=0b'), and when the value is 1b', it indicates that the BIOS file stored in the first storage area is not damaged (that is, 0x2000[0]=1b'), where b' represents a bit.
[0054] Those skilled in the art should understand that the first identifier may also occupy more bits, and the first identifier may also indicate more content, such as indicating whether the BIOS file stored in the second storage area is damaged, etc. As long as the first identifier has two different states that can respectively indicate whether the BIOS file stored in the first storage area is damaged or not, the specific form of the first identifier is not limited in the embodiments of the present disclosure.
[0055] The control module plays the main control function in the control system. After the electronic device is started, the chip on the motherboard will be reset first, and then the BIOS file will be executed. During the motherboard reset process, the first reset signal (for example, PCIRST#) is in a valid state. After the motherboard completes the reset, the first reset signal is in an invalid state (for example, PCIRST#deassert), and the control module responds to the first reset signal being in an invalid state and can start to obtain the BIOS file.
[0056] Since the first identifier indicates whether the BIOS file stored in the first storage area is damaged, the control module can first read the first identifier from the third storage area in response to the first reset signal being in an invalid state. When the first identifier indicates that the BIOS file stored in the first storage area is not damaged, the control module can read the BIOS file from the first storage area and execute it. When the first identifier indicates that the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged. At this time, the control module can read the BIOS file from the second storage area and execute it. In this case, regardless of whether the BIOS file stored in the first storage area is damaged due to an update, the BIOS file executed by the control module is an undamaged BIOS file. An exemplary method for a processor to read a BIOS file is given later.
[0057] According to the control system of the embodiment of the present disclosure, by storing BIOS files in the first storage area and the second storage area respectively, storing the first identifier in the third storage area, the first identifier indicates whether the BIOS file stored in the first storage area is damaged, so that the control system can record the state of the BIOS file stored in the first storage area; the control module responds to the first reset signal being in an invalid state, reads the first identifier from the third storage area, and when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, reads the BIOS file from the first storage area and executes it, so that when the BIOS stored in the first storage area is not damaged, the BIOS file executed by the control module is an undamaged BIOS file; when the first identifier indicates that the BIOS file stored in the first storage area is damaged, reads the BIOS file from the second storage area and executes it, when the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, so that when the BIOS file stored in the first storage area is damaged, the BIOS file executed by the control module is also an undamaged BIOS file. In this case, regardless of whether the BIOS stored in the first storage area is damaged due to the update, the BIOS file executed by the control module is an undamaged BIOS file. After the electronic device loses power and is powered on again, the undamaged BIOS file can be executed so that the electronic device can be used normally, saving maintenance costs and startup time costs; because the control system can quickly find and execute the undamaged BIOS file, there is no need to execute the BIOS file first to determine whether the BIOS file is damaged, so the startup time cost can be further saved. In summary, when the control system of the embodiment of the present disclosure is set in an electronic device, it can save the maintenance cost and startup time cost of the electronic device and improve the user experience.
[0058] An exemplary structure of the first storage module is introduced below.
[0059] In a possible implementation, the first storage module includes a first memory and a second memory, the first storage area and the third storage area are located in the first memory, and the second storage area is located in the second memory;
[0060] The system also includes a multiplexer, and the control module selects to connect to one of the first memory and the second memory through the multiplexer.
[0061] For example, the first storage module may include multiple memories, the first storage area and the third storage area are set on the same memory, and the second storage area may be set on a different memory from the first storage area and the third storage area.
[0062] Figure 3 A schematic diagram showing the structure of a first storage module according to an embodiment of the present disclosure.
[0063] like Figure 3 As shown, the first storage module may include a first memory ROMA and a second memory ROMB. The first storage area may be located in the memory of the first memory, the third storage area may be a register of the first memory, and the second storage area may be located in the memory of the second memory ROMB.
[0064] In this case, before the control module reads the content stored in a certain storage area, it is necessary to ensure that the communication link between the control module and the memory where the storage area is located is connected. Figure 3 As shown, the control system may further include a multiplexer, which is connected to the control module. When the control module wants to read the contents stored in the first memory, it may choose to connect to the first memory through the multiplexer. When the control module wants to read the contents stored in the second memory, it may choose to connect to the second memory through the multiplexer.
[0065] In this way, when two BIOS files are stored in different memories, the control system of the disclosed embodiment can quickly establish a connection relationship between the memory and the multiplexer, so that the control module can quickly access the correct memory through the multiplexer. In addition, a single memory only needs to store one BIOS file, and the hardware requirements for the memory are relatively low.
[0066] In a possible implementation, the control module includes a first controller, the first controller stores a second identifier, when the second identifier is in a first state, it indicates accessing a storage area on a first memory, when the second identifier is in a second state, it indicates accessing a storage area on a second memory, in an initial state, the second identifier is in the first state, and the first controller is used to,
[0067] When the second identifier is in the first state, the multiplexer is connected to the first memory, and when the second identifier is in the second state, the multiplexer is connected to the second memory;
[0068] In response to the first reset signal being in an invalid state, the first identifier is read from the third storage area according to an indication of the second identifier in the initial state.
[0069] For example, the structure of the first storage module is as follows: Figure 3 As shown, in order to enable the control module to quickly determine the connection object of the multiplexer, the control module can store a second identifier P0Flag, which indicates access to a storage area on the first memory when the second identifier is in the first state (for example, P0Flag=0), and indicates access to a storage area on the second memory when the second identifier is in the second state (for example, P0Flag=1). The control module can access the corresponding memory according to the instruction of the second identifier.
[0070] Figure 4 A schematic diagram showing the structure of a control module according to an embodiment of the present disclosure.
[0071] like Figure 4 As shown, the control module may include a first controller, and the first controller may be a serial peripheral interface (Serial peripheral interface, SPI) controller. The structure of the first storage module is as shown in Figure 3 As shown, the first controller can control the multiplexer (not shown) to communicate with a memory in the first storage module according to the indication of the second identifier.
[0072] The second identifier may be stored in a register (not shown) of the first controller. The register may be accessed through a memory-mapped input / output (MMIO) instruction, or may be accessed through an input / output (IO) instruction (such as an IN / OUT instruction) to modify the state of the second identifier. The first state may be "0" and the second state may be "1". Those skilled in the art should understand that as long as the first state and the second state are different, the present disclosure does not limit the form of the second identifier in different states.
[0073] The register may have a read-write lock (RWL) property, that is, multiple read operations on the second identifier are allowed to be performed simultaneously, but any write operation on the second identifier will block other read operations and write operations.
[0074] This register belongs to the core domain of the control system (core dormain). That is, when the mainboard is reset after power failure, when the first reset signal is in the valid state, the reset of the mainboard has not yet ended, and the second flag will not be updated. That is, when the control module determines that the first reset signal has changed to an invalid state, the second flag is still in the initial state. In the initial state, the second flag is in the first state, and the multiplexer is connected to the first memory by default.
[0075] The first reset signal can be received by the first controller. When the first reset signal changes to an invalid state, the first controller can determine that the reset of the mainboard has ended, and then read the first identifier stored in the third storage area. The first controller can control the multiplexer to connect to the first memory according to the indication of the second identifier. The control module responds to the first reset signal being in an invalid state and reads the first identifier from the third storage area. The first controller can respond to the first reset signal being in an invalid state and access the third storage area on the first memory to read the first identifier through the multiplexer connected to the first memory.
[0076] In this way, in a scenario where two BIOS files are stored in different memories, the control system of the embodiment of the present disclosure can accurately read the first identifier from the first memory including multiple storage areas.
[0077] Another exemplary structure of the first storage module is introduced below.
[0078] In a possible implementation, the first storage module includes a third memory, the first storage area, the second storage area, and the third storage area are located in the third memory, and the control module is directly connected to the third memory.
[0079] For example, the first storage module may include at least one memory, and the first storage area and the third storage area, the third storage area, are all set on the same memory.
[0080] Figure 5 A schematic diagram showing the structure of a first storage module according to an embodiment of the present disclosure.
[0081] like Figure 5 As shown, the first storage module may include a third memory ROMC. The first storage area and the second storage area may be two different areas in the memory of the third memory, and the third storage area may be a register (not shown) in the third memory.
[0082] In this case, the control module can be directly connected to the third memory, and when reading the content stored in a certain storage area, it only needs to directly access the corresponding storage area.
[0083] In this way, it is easier for the control module to access each storage area.
[0084] Furthermore, the first memory, the second memory, and the third memory may be flash memory. The present disclosure does not limit the specific types of the first memory, the second memory, and the third memory.
[0085] In one possible implementation, the control module includes a first controller, which stores a second identifier. When the second identifier is in a first state, it indicates access to a first storage area. When the second identifier is in a second state, it indicates access to a second storage area. In an initial state, the second identifier is in the first state.
[0086] For example, the structure of the first storage module is as follows: Figure 5As shown, the first storage area, the second storage area, and the third storage area are all located in the third memory. Although it is no longer necessary to determine the connection object of the control module (the control module is already connected to the third memory), it is necessary to determine which storage area to read the BIOS file from. Therefore, the control module can store a second identifier P0Flag. When the second identifier is in the first state (for example, P0Flag=0), it indicates access to the first storage area. When the second identifier is in the second state (for example, P0Flag=1), it indicates access to the second storage area. The control module can access the corresponding storage area according to the indication of the second identifier. At this time, the first controller can directly communicate with the memory in the first storage module.
[0087] The second identifier may be stored in a register of the first controller. The properties of the register and examples of the first state and the second state have been described above and will not be repeated here.
[0088] When the first reset signal is in the valid state, the reset of the mainboard has not yet ended, and the second flag will not be updated, that is, when the control module determines that the first reset signal has changed to the invalid state, the second flag is still in the initial state. In the initial state, the second flag is in the first state, and when the control module wants to read the BIOS file, it accesses the first storage area by default.
[0089] The first reset signal can be received by the first controller. When the first reset signal changes to an invalid state, the first controller can determine that the reset of the mainboard has ended, and then read the first identifier stored in the third storage area. The control module responds to the first reset signal being in an invalid state and reads the first identifier from the third storage area. The first controller responds to the first reset signal being in an invalid state and directly accesses the third storage area on the third memory through the first controller to read the first identifier.
[0090] In this way, when two BIOS files are stored in the same memory, the control system of the embodiment of the present disclosure can accurately read the first identifier from the third memory including multiple storage areas.
[0091] The following describes an exemplary manner in which the control module reads the BIOS file according to the instruction of the first identifier.
[0092] Figure 6a and Figure 6b A schematic diagram showing the structure of a control module according to an embodiment of the present disclosure.
[0093] In a possible implementation, the control module further includes a processor.
[0094] The first controller is further configured to, when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, set the second identifier to the first state, and when the first identifier indicates that the BIOS file stored in the first storage area is damaged, set the second identifier to the second state;
[0095] The processor is also used to, according to the instruction of the second identifier, access the corresponding storage area through the first controller, read the BIOS file and execute it.
[0096] For example, if Figure 6a As shown, the control module may further include a processor. The processor may be a CPU, etc. When the first storage area and the second storage area are located in different memories, the processor may communicate with the first storage module through the first controller, the multiplexer, and the first storage module.
[0097] Furthermore, if Figure 6b As shown, the control module may also include a processor, a north bridge chip and a south bridge chip. The first controller may be arranged on the south bridge chip, and the south bridge chip and the processor may be connected to the north bridge chip respectively. When the first storage area and the second storage area are located in different memories, the processor may communicate with the first storage module through the north bridge chip, the south bridge chip, and the multiplexer.
[0098] When the first storage area and the second storage area are located in the same memory, the processor may communicate with the first storage module through the first controller.
[0099] Those skilled in the art should understand that the control module may have other exemplary structures, and the present disclosure does not limit the specific structure of the control module. Figure 6a The structure of the control module shown is used as an example to introduce an exemplary manner in which a processor reads a BIOS file.
[0100] The structure of the first storage module is as follows Figure 3 As shown, if the processor determines that the first identifier indicates that the BIOS file stored in the first storage area is not damaged, it can be determined that the undamaged BIOS file can be read from the first storage area, so the multiplexer can be connected to the first memory. That is, the first controller can make the second identifier the first state.
[0101] If the first controller determines that the first identifier indicates that the BIOS file stored in the first storage area is damaged, it can be determined that the undamaged BIOS file cannot be read from the first storage area. When the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, and it can be determined that the undamaged BIOS file can be read from the second storage area, so the multiplexer can be connected to the second storage. That is, the first controller can make the second identifier the second state.
[0102] After the first controller updates the second identifier according to the first identifier, it switches the memory connected to the multiplexer according to the instruction of the second identifier. After the switching is completed, the processor starts power-on self-test, resets, accesses the corresponding storage area through the first controller to read the undamaged BIOS file, and executes the read BIOS file (i.e., Romsip cycle). In this process, the configuration information (communication interface, etc.) of the module on the link between the processor and the first storage module will be verified to avoid errors in reading the BIOS file, which will cause the operating system to fail to start normally. The verification process can be implemented based on existing technologies and will not be repeated here.
[0103] The first controller can control the multiplexer to connect to the first memory according to the second identifier of the first state. The processor can access the first storage area on the first memory through the first controller and the multiplexer connected to the first memory to read and execute the BIOS file.
[0104] The first controller can control the multiplexer to connect to the second memory according to the second identifier of the second state. The processor can access the second storage area on the second memory through the first controller and the multiplexer connected to the second memory to read and execute the BIOS file.
[0105] In this way, when two BIOS files are stored in different memories, the control system of the embodiment of the present disclosure can read the undamaged BIOS file more quickly.
[0106] After the processor executes the BIOS file, the reset signal of the processor changes to an invalid state (CPURST#deassert). The execution of the BIOS file will start the operating system, so that the electronic device can be used normally (ie, BIOSboot).
[0107] The structure of the first storage module is as follows Figure 5 As shown, if the first controller determines that the first identifier indicates that the BIOS file stored in the first storage area is not damaged, it can be determined that the undamaged BIOS file can be read from the first storage area, and the second identifier can be set to the first state.
[0108] If the first controller determines that the first identifier indicates that the BIOS file stored in the first storage area is damaged, it can be determined that the undamaged BIOS file cannot be read from the first storage area. When the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, and it can be determined that the undamaged BIOS file can be read from the second storage area, so the first controller can set the second identifier to the second state.
[0109] After the first controller updates the second identifier according to the first identifier, the third memory can be accessed through the first controller. When the second identifier is in the first state, the first controller can access the first storage area to read the BIOS file and return it to the processor through the north bridge chip. When the second identifier indicates the second state, the first controller can access the second storage area to read the BIOS file and return it to the processor through the north bridge chip.
[0110] In this way, when two BIOS files are stored in the same memory, the control system of the embodiment of the present disclosure can read the undamaged BIOS file more quickly.
[0111] The following describes an exemplary method for updating a BIOS file in a control system according to an embodiment of the present disclosure without losing power.
[0112] In a possible implementation, the processor executes a BIOS file update program.
[0113] The first processing module is also used for, when executing the BIOS file update program,
[0114] Before updating the BIOS file stored in the first storage area, copying the BIOS file stored in the first storage area to the second storage area;
[0115] When the BIOS file stored in the first storage area starts to be updated, the second flag is set to the second state. When the BIOS file stored in the first storage area is completely updated, the second flag is set to the first state.
[0116] For example, after the control system is reset, the BIOS file is read, and after the BIOS file is executed, the electronic device can be turned on normally. During the normal operation of the electronic device, if a new version of the BIOS file is detected, the stored BIOS file can be updated.
[0117] The processor can execute a BIOS file update program. The BIOS file update program can be a program running in the operating system or an upgrade program included in the BIOS file (which can be accessed through the BIOS menu).
[0118] Figure 7 A schematic diagram showing a BIOS file update process according to an embodiment of the present disclosure.
[0119] When the second identifier is in the first state in the initial state, the BIOS file stored in the first storage area can be updated to the latest version. In order to make the version of the BIOS file stored in the second storage area as new as possible, such as Figure 7As shown, at a certain moment before updating the BIOS file stored in the first storage area (for example, at time T0), the processor can first copy the BIOS file stored in the first storage area and store it in the second storage area. Before time T0, the second storage area may or may not store a BIOS file, and the embodiments of the present disclosure do not limit this.
[0120] During the execution of the BIOS file update program, the processor can update the second identifier according to the update progress of the BIOS file. For example, when starting to update the BIOS file stored in the first storage area (for example, at time T1), the processor can set the second identifier to the second state, indicating that the BIOS file stored in the first storage area has been damaged. If the electronic device restarts, the control module can access the second storage area to read the BIOS file. When the BIOS file stored in the first storage area is updated (for example, at time T2), the processor can set the second identifier to the first state, indicating that the BIOS file stored in the first storage area has not been damaged. If the electronic device restarts, the control module can access the first storage area to read the BIOS file. Table 1 shows the states of the first identifier and the second identifier at different times.
[0121] Table 1
[0122]
[0123] The corresponding relationship between the states of the first identifier and the second identifier shown in Table 1 at different times can be reflected in the program running on the processor, rather than necessarily stored in the memory where the first storage area is located. If necessary, this corresponding relationship can also be stored in the first storage module. The embodiments of the present disclosure do not limit whether the corresponding relationship between the states of the first identifier and the second identifier at different times is stored in the memory where the first storage area is located.
[0124] As shown in Table 1 and Figure 7 shown, assuming that after releasing a new version of the BIOS file and before time T0 (t < T0), the electronic device starts up normally, and the processor has not started to execute the BIOS file update program, and the first storage area stores an undamaged old version of the BIOS file. At this time, the first identifier indicates that the BIOS file stored in the first storage area has not been damaged, so it can be "1b'", and the second identifier indicates accessing the storage area on the first memory (for the structure of the first storage module, see Figure 3 ) or indicates accessing the first storage area (for the structure of the first storage module, see Figure 5 ), so the second identifier can be the first state "0".
[0125] At time T0, the processor starts to copy the BIOS file stored in the first storage area to the second storage area. At a certain moment between time T0 and time T1, the copying of the BIOS file is completed. At this time, the second storage area also stores the undamaged old version of the BIOS file. At time T1, the processor starts to update the BIOS file stored in the first storage area, and at this time, the BIOS file stored in the first storage area is damaged. Then, between time T0 and time T1 (T0 ≤ t < T1), the first storage area still stores the undamaged old version of the BIOS file. The first identifier is still "1b'", and the second identifier is still in the first state "0".
[0126] At time T2, the update of the BIOS file stored in the first storage area is completed. Therefore, between time T1 and time T2 (T1 ≤ t < T2), the first storage area stores the damaged BIOS file, and the second storage area stores the undamaged old version of the BIOS file. At this time, the first identifier indicates that the BIOS file stored in the first storage area is damaged and is therefore "0b'", and the second identifier is in the second state "1".
[0127] After time T2, the first storage area stores the undamaged new version of the BIOS file, and the second storage area stores the undamaged old version of the BIOS file. At this time, the first identifier indicates that the BIOS file stored in the first storage area is undamaged and is therefore "1b'", and the second identifier is in the first state "0".
[0128] In this way, when the processor needs to access the first storage module to read the BIOS file, the state of the second identifier is consistent with the state of the BIOS file stored in the first storage area. That is, when the processor needs to access the first storage module to read the BIOS file and the second identifier is in the first state, it can be considered that the BIOS file stored in the first storage area is undamaged. When the processor needs to access the first storage module to read the BIOS file and the second identifier is in the second state, it can be considered that the BIOS file stored in the first storage area is damaged. This enables the control module to accurately access the storage area where the undamaged BIOS file is located according to the second identifier, ensuring that the restart of the electronic device can proceed normally. And the second identifier indicates the version update of the BIOS file stored in the accessed storage area, making the performance of the electronic device better.
[0129] In a possible implementation, the processor is further configured to
[0130] In response to the start of execution of the BIOS file update program, query the state of the second identifier;
[0131] When the second identifier is in the first state, continue to execute the BIOS file update program;
[0132] When the second identifier is in the second state, the BIOS file updating program is stopped.
[0133] For example, see Figure 7 According to the relevant description, when executing the BIOS file update program, the BIOS file stored in the first storage area must first be copied. If the BIOS file stored in the first storage area itself is damaged, then after copying it to the second storage area, the BIOS file stored in the second storage area will also be damaged. If the electronic device is restarted after power failure, both BIOS files will be damaged and the electronic device will not be able to start normally.
[0134] Since the processor needs to access the first storage module to read the BIOS file and the second identifier is in the first state, it can be considered that the BIOS file stored in the first storage area is not damaged. When the processor needs to access the first storage module to read the BIOS file and the second identifier is in the second state, it can be considered that the BIOS file stored in the first storage area is damaged. Therefore, before copying the BIOS file stored in the first storage area, the state of the second identifier can be queried first. If the second identifier is in the first state, the BIOS file update program can be continued to copy and update the BIOS file stored in the first storage area. If the second identifier is in the first state, the BIOS file update program cannot be continued. The processor can use the existing technology to repair the BIOS file stored in the first storage area. After the repair is completed, the first identifier and the second identifier are updated, and then the BIOS file update program is continued.
[0135] In this way, it can be ensured that the update will not damage both BIOS files, thereby ensuring that the control system can execute the undamaged BIOS file to normally start the electronic device.
[0136] The following describes an exemplary method in which a processor according to an embodiment of the present disclosure copies a BIOS file stored in a first storage area to a second storage area.
[0137] In a possible implementation, the system further includes a second storage module, and the processor is specifically configured to:
[0138] When the second identifier is in the first state, according to the instruction of the second identifier, the BIOS file is read from the first storage area, the read BIOS file is written into the second storage module, and after the writing is completed, the second identifier is set to the second state;
[0139] Reading a BIOS file from the second storage module, writing the read BIOS file into the second storage area according to the state of the second identifier, and setting the second identifier to the first state after the writing is completed;
[0140] The first identifier indicates that the BIOS file stored in the first storage area is damaged, and the BIOS file stored in the first storage area is started to be updated;
[0141] When the BIOS file stored in the first storage area is updated, the first mark indicates that the BIOS file stored in the first storage area is not damaged;
[0142] Reboot the system.
[0143] Figure 8a A schematic diagram showing the structure of a control system according to an embodiment of the present disclosure.
[0144] For example, if Figure 8a As shown, the control system also includes a second storage module. In the structure of the control module as shown Figure 6a As shown, the second storage module can be connected to the processor. Figure 6b As shown, the control module can be connected to the north bridge chip, and communicate with the south bridge chip and the processor through the north bridge chip. The second storage module can be a memory.
[0145] When the second identifier is in the first state, the processor can determine to continue to execute the BIOS file update program, and according to the instruction of the second identifier, the first storage area can be accessed to read the BIOS file. The exemplary manner in which the processor accesses the first storage area according to the instruction of the second identifier has been described above and will not be repeated here.
[0146] The processor can write the read BIOS file into the second storage module. After writing is completed, the processor can make the second identification be in the second state.
[0147] The processor can read the BIOS file from the second storage module. Since the second identifier indicates accessing the storage area on the second memory or accessing the second storage area when the second state is the second state, the storage area on the second memory is the second storage area. Therefore, according to the state of the second identifier, the processor can write the read BIOS file to the second storage area. The exemplary manner in which the processor accesses the second storage area according to the instruction of the second identifier has been described above and will not be repeated here.
[0148] After the BIOS file is written into the second storage area, it indicates that the BIOS file stored in the first storage area has been copied, and the BIOS file stored in the first storage area needs to be updated next, that is, the first storage area needs to be accessed next. The processor can set the second identifier to the first state.
[0149] Afterwards, the processor can make the first mark indicate that the BIOS file stored in the first storage area is damaged, and start to update the BIOS file stored in the first storage area. When the BIOS file stored in the first storage area is updated, the first mark indicates that the BIOS file stored in the first storage area is not damaged.
[0150] Figure 8b-Figure 8d An example of information transmitted on a bus between a first storage module and a first controller according to an embodiment of the present disclosure is shown.
[0151] In one example, four buses may be included between the first storage module and the first controller. The first bus may transmit a chip select signal CS, which indicates a connection object of the first controller. In the embodiment of the present disclosure, the connection object may be the first memory, the second memory, or the third memory. The second bus may transmit a clock signal CLOCK, the third bus may transmit a data signal MOSI sent from the host to the slave, and the fourth bus may transmit a data signal MISO sent from the slave to the host.
[0152] like Figure 8b As shown, when the processor reads the BIOS file from the first storage area, the first storage module can be used as the host and the first controller can be used as the slave. At this time, the data signal MOSI is valid. There are two optional read access modes, one is the normal read access mode and the other is the fast read access mode. In the normal read access mode, the content of the data signal MOSI may include a normal read access identifier (03). In the fast read access mode, the content of the data signal MOSI may include a fast read access identifier (0B).
[0153] In both the normal read access mode and the fast read access mode, the data signal MOSI may include an access address (0xFFFFF0). The access address indicates the starting storage address of the read data.
[0154] In the fast read access mode, in order to avoid reading erroneous information, a certain amount of data bits can be reserved for buffering. Therefore, the content recorded by the data signal MOSI can also include buffering information (00)
[0155] In both the normal read access mode and the fast read access mode, the data signal MOSI may include read data, and the read data may include an old version of the BIOS file.
[0156] like Figure 8cAs shown, when the processor writes the BIOS file read from the second storage module into the second storage area, the second storage area may be sector erased first, and then the BIOS file is written into the second storage area. When performing sector erasing, the first controller may be used as the host, and the first storage module may be used as the slave, and at this time the data signal MOSI is valid. The content of the data signal MOSI may include write enable information (06), a sector erase identifier (20), and an access address (0xFFF000), and the access address indicates the starting address of the sector erase. When writing the BIOS file into the second storage area, the first controller may be used as the host, and the first storage module may be used as the slave, and the first controller may be used as the host, and the first storage module may be used as the slave, and at this time the data signal MOSI is valid. The content of the data signal MOSI may include write enable information (06), a write access identifier (02), an access address (0xFFFFF0), and write data. The access address indicates the starting address of the data write. The write data may include an old version of the BIOS file.
[0157] like Figure 8d As shown, when updating the BIOS file stored in the first storage area, the first controller can be used as the host and the first storage module can be used as the slave, and the data signal MOSI is valid at this time. The first storage area can be sector erased first, and then the BIOS file can be written. When performing sector erasure, the content of the data signal MOSI may include write enable information (06), sector erase identification (20), access address (0xFFF000), and the access address indicates the starting address of sector erase. When writing the BIOS file, the first controller can be used as the host and the first storage module can be used as the slave, and the data signal MOSI is valid at this time. The content of the data signal MOSI may include write enable information (06), write access identification (02), access address (0xFFFFF0), and write data. The access address indicates the starting address of data writing. The write data may include a new version of the BIOS file.
[0158] Those skilled in the art should understand that when the processor reads the BIOS file from the first storage area, writes the BIOS file read from the second storage module into the second storage area, and updates the BIOS file stored in the first storage area, the data signal can also include more content, as long as it includes the BIOS file to be read / written, and the present disclosure does not limit the specific content of the data signal.
[0159] Those skilled in the art should understand that the normal read access flag, the fast read access flag, the buffer information, the sector erase flag, the write enable information, the write access flag, etc. may also be defined as other values, and the embodiments of the present disclosure are not limited to this.
[0160] After completing the update of the BIOS file stored in the first storage area, the control system can be restarted, or the electronic device can be restarted to avoid conflicts between the contents reported when the new version of the BIOS file is executed and the old version of the BIOS file.
[0161] The processor also executes a BIOS file update result check program, which is used to check whether the BIOS file is successfully updated. The program can be executed after the BIOS file update program is executed, or after the system is restarted. When the control system loses power at different stages of the BIOS file update process, the BIOS file update result check program is executed differently.
[0162] In a possible implementation, the processor is further configured to, in response to the BIOS file update result checking program starting to execute, query a state of the second identifier;
[0163] When the second identifier is in the first state, according to the instruction of the second identifier, read the BIOS file from the first storage module, and check whether the read BIOS file is the latest version;
[0164] If the BIOS file being read is not the latest version, re-execute the BIOS file update program;
[0165] When the read BIOS file is the latest version, the read BIOS file is executed.
[0166] In a possible implementation, the processor is further configured to:
[0167] When the second identifier is in the second state, the second identifier is set to the first state, and the steps of making the first identifier indicate that the BIOS file stored in the first storage area is damaged, and starting to update the BIOS file stored in the first storage area and subsequent steps are re-executed.
[0168] For example, referring to Table 1, if the control system loses power before time T1, the second identifier is in the first state when restarting, and the BIOS file stored in the first storage module is an old version, and the update fails at this time. If the control system loses power between time T1 and time T2, the second identifier is in the second state when restarting, and the BIOS file stored in the first storage module has been damaged. If the control system loses power after time T2, the second identifier is also in the first state when restarting, but the BIOS file stored in the first storage module is a new version, and the update is successful at this time.
[0169] Therefore, the processor starts executing in response to the BIOS file update result check program, and can query the state of the second identifier. When the second identifier is in the first state, the processor can access the first storage module to read the BIOS file and check the version of the BIOS file. If it is not the latest version, it means that the update failed, and the BIOS file update program can be re-executed. If it is the latest version, it means that the update is successful and the BIOS file can be executed.
[0170] Fig. 9 An exemplary execution method of the BIOS file update result checking program when the control system loses power between time T1 and time T2 according to an embodiment of the present disclosure is shown.
[0171] like Fig. 9 As shown, when the control system loses power at time T3 between time T1 and time T2, the second identifier is in the second state, indicating that the BIOS file stored in the first storage module has been damaged, and the processor may believe that the old version of the BIOS file stored in the first storage area has been copied to the second storage area, but the BIOS file stored in the first storage area has not been successfully updated to the new version. Therefore, the processor can make the second identifier the first state and restart the update of the BIOS file stored in the first storage area at time T4, that is, re-execute the steps of making the first identifier indicate that the BIOS file stored in the first storage area is damaged, and start updating the BIOS file stored in the first storage area and the subsequent steps. Exemplarily, if the update of the BIOS file stored in the first storage area is completed at time T5, then the first storage area can store a new version of the BIOS file that has not been damaged at time T5.
[0172] In this way, when the control system of the disclosed embodiment loses power at different stages during the BIOS file update process, the BIOS file update result check program can check whether the BIOS file is updated successfully and perform corresponding processing, thereby improving the update efficiency of the BIOS file.
[0173] The present disclosure also provides a mainboard, including the control system described above. The schematic diagram of the mainboard structure can be found in Figure 1 .
[0174] The present disclosure also provides an electronic device, including the mainboard described above. The schematic diagram of the structure of the electronic device can be found in Figure 1 The electronic device may be a terminal device or a server. The embodiments of the present disclosure do not limit the specific type of the electronic device.
[0175] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.
[0176] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.
Claims
1. A control system, characterized in that: The system includes a control module and a first storage module, the first storage module includes a first storage area, a second storage area and a third storage area, the first storage area and the second storage area respectively store BIOS files, the third storage area stores a first identifier, the first identifier indicates whether the BIOS file stored in the first storage area is damaged, when the BIOS file stored in the first storage area is damaged, the BIOS file stored in the second storage area is not damaged, The control module is used to: In response to the first reset signal being in an invalid state, reading the first identifier from the third storage area; When the first identifier indicates that the BIOS file stored in the first storage area is not damaged, reading the BIOS file from the first storage area and executing it; When the first identifier indicates that the BIOS file stored in the first storage area is damaged, the BIOS file is read from the second storage area and executed.
2. The system according to claim 1, characterized in that The first storage module includes a first memory and a second memory, the first storage area and the third storage area are located in the first memory, and the second storage area is located in the second memory; The system further includes a multiplexer, and the control module selects to connect to one of the first memory and the second memory through the multiplexer.
3. The system according to claim 1, characterized in that The first storage module includes a third memory, the first storage area, the second storage area and the third storage area are located in the third memory, and the control module is directly connected to the third memory.
4. The system according to claim 2, characterized in that The control module includes a first controller, the first controller stores a second identifier, the second identifier indicates access to a storage area on the first memory when the second identifier is in a first state, and the second identifier indicates access to a storage area on the second memory when the second identifier is in a second state. In an initial state, the second identifier is in the first state. The first controller is used to: When the second identifier is in a first state, the multiplexer is connected to the first memory, and when the second identifier is in a second state, the multiplexer is connected to the second memory; In response to the first reset signal being in an invalid state, the first identifier is read from the third storage area.
5. The system according to claim 3, characterized in that The control module includes a first controller, which stores a second identifier. When the second identifier is in a first state, it indicates access to the first storage area. When the second identifier is in a second state, it indicates access to the second storage area. In an initial state, the second identifier is in the first state.
6. The system according to claim 4 or 5, characterized in that: The control module also includes a processor, The first controller is further configured to, when the first identifier indicates that the BIOS file stored in the first storage area is not damaged, set the second identifier to a first state, and when the first identifier indicates that the BIOS file stored in the first storage area is damaged, set the second identifier to a second state; The processor is used to access the corresponding storage area through the first controller according to the instruction of the second identifier, read the BIOS file and execute it.
7. The system according to claim 6, characterized in that The processor executes a BIOS file update program, The processor is further configured to, when executing the BIOS file update program, Before updating the BIOS file stored in the first storage area, copying the BIOS file stored in the first storage area to the second storage area; When the BIOS file stored in the first storage area starts to be updated, the second identifier is set to the second state. When the BIOS file stored in the first storage area is completely updated, the second identifier is set to the first state.
8. The system according to claim 7, characterized in that The processor is further configured to: Before the BIOS file update program starts to execute, querying the state of the second identifier; When the second identifier is in the first state, continue to execute the BIOS file update program; When the second identifier is in the second state, the BIOS file updating program is stopped.
9. The system according to claim 7, characterized in that The system further includes a second storage module, and the processor is specifically configured to: When the second identifier is in the first state, according to an instruction of the second identifier, read a BIOS file from the first storage area, write the read BIOS file into the second storage module, and set the second identifier to the second state after the writing is completed; Reading a BIOS file from the second storage module, writing the read BIOS file into the second storage area according to the state of the second identifier, and setting the second identifier to the first state after the writing is completed; The first identifier indicates that the BIOS file stored in the first storage area is damaged, and the BIOS file stored in the first storage area starts to be updated; When the BIOS file stored in the first storage area is updated, the first identifier indicates that the BIOS file stored in the first storage area is not damaged; Reboot the system.
10. The system according to claim 9, characterized in that The processor executes a BIOS file update result checking program, The processor is further configured to, in response to the BIOS file update result checking program starting to execute, query the state of the second identifier; When the second identifier is in the first state, according to an instruction of the second identifier, read the BIOS file from the first storage module, and check whether the read BIOS file is the latest version; When the read BIOS file is not the latest version, re-execute the BIOS file update program; When the read BIOS file is the latest version, the read BIOS file is executed.
11. The system according to claim 10, characterized in that The processor is further configured to: When the second identifier is in the second state, the second identifier is set to the first state, and the steps of making the first identifier indicate that the BIOS file stored in the first storage area is damaged, and starting to update the BIOS file stored in the first storage area and subsequent steps are re-executed.
12. A motherboard, characterized in that: A control system comprising any one of claims 1-11.
13. An electronic device, characterized in that: Comprising the mainboard as claimed in claim 12.
Citation Information
Patent Citations
Electric device, start method of electric and update method of BIOS
CN101017441A
Method, controller and control system for controlling BIOS start-up of electronic apparatus
CN101354659A
Embedded system based on redundancy
CN110704114A
Method and device for shortening power-on time of server, equipment and storage medium
CN113867807A
BIOS firmware verification system, method and device
CN114168205A