A programming apparatus, method, electronic device, and readable storage medium
By designing a matching interface between the programming socket and the server motherboard, the image programming process is simplified, solving the problems of cumbersome steps and chip damage in existing technologies, improving production and R&D efficiency, and reducing costs.
Patent Information
- Application Number
- CN202211203467.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-29
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2042-09-29
AI Technical Summary
The existing technology involves a complicated image burning process, which leads to low production and R&D efficiency. Furthermore, placing the chip to be burned upside down can easily damage the chip, increasing costs.
A programming device was designed that connects the female pin interface of the programming socket to the male pin interface of the server motherboard. A raised part is set on the cover of the programming socket to match the groove of the flash chip to be programmed, which simplifies the image programming process, avoids damage caused by the chip being placed upside down, and does not rely on software and hardware.
It simplifies the image burning process, improves server production and R&D efficiency, reduces costs, and prevents chip damage.
Smart Images

Figure CN115509558B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of storage technology, and in particular to a programming device, a programming method, an electronic device, and a computer-readable storage medium. Background Technology
[0002] In the process of server production and R&D, it is often necessary to use a programmer to burn the image into the flash (Flash EEPROM Memory) chip of the BMC (Baseboard Management Controller) and BIOS (Basic Input Output System). However, the burning process of current programmers is cumbersome, which wastes burning time to some extent. In addition, programmers depend on corresponding software and hardware, and have a certain degree of dependency. Furthermore, if the flash chip to be burned is placed upside down in the programmer, it will cause the flash chip to be burned.
[0003] In existing technologies, burning images using a programmer requires certain costs and affects production and R&D efficiency during server production and R&D. Summary of the Invention
[0004] The present invention provides a programming apparatus, method, electronic device, and computer-readable storage medium to solve or partially solve the problems in the prior art of cumbersome mirror programming steps, resulting in low production and R&D efficiency, and chip burnout caused by placing the chip to be programmed upside down.
[0005] This invention discloses a programming device, including a programming socket, a server motherboard, and a flash chip to be programmed. The flash chip has a recessed groove. The server motherboard includes a male pin interface. The programming socket includes a female pin interface adapted to the male pin interface of the server motherboard and a programming socket cover. The programming socket cover has a protrusion adapted to the recessed groove of the flash chip to be programmed.
[0006] The programming socket is connected to the male pin interface of the server motherboard through the female pin interface, and is connected to the groove of the flash chip to be programmed through the protrusion of the programming socket cover.
[0007] Optionally, the server motherboard also includes a mirror object, which includes at least one of a Baseboard Management Controller (BMC) and a Basic Input / Output System (BIOS), wherein the BMC includes at least a BMC main flash chip and a BMC spare flash chip, and the BIOS includes at least a BIOS main flash chip and a BIOS spare flash chip.
[0008] Optionally, the server motherboard also includes a programming button, which is used to determine the target image object to be programmed into the server motherboard and to control the start and end of programming.
[0009] Optionally, the server motherboard further includes an indicator light, which is used to indicate the target image object to be burned into the server motherboard and to indicate the burning status of the target image object in the server motherboard; the burning status includes at least a burning completion status.
[0010] This invention also discloses a programming method applied to the programming apparatus described above, the method comprising:
[0011] In response to an operation command on the programming button of the server motherboard, the target image object in the server motherboard is determined according to the instruction type of the operation command;
[0012] The flash chip to be programmed is programmed according to the target image object in the server motherboard.
[0013] Optionally, determining the target image object in the server motherboard based on the instruction type of the operation instruction includes:
[0014] When the instruction type of the operation command is double-click, the BMC is identified as the target image object in the server motherboard;
[0015] When the instruction type of the operation command is click, the BIOS is identified as the target image object in the server motherboard.
[0016] Optionally, it also includes:
[0017] When the target image object to be burned is BMC, the indicator light on the server motherboard remains solid red.
[0018] When the target image object to be burned is a BIOS, the indicator light on the server motherboard remains in a flashing red state;
[0019] When the target image object is successfully burned, the indicator light on the server motherboard will automatically switch to green.
[0020] Optionally, the step of programming the flash chip to be programmed based on the target image object in the server motherboard includes:
[0021] When the target image object is BMC, the image file in the BMC spare flash chip of the server motherboard is copied to the flash chip to be programmed.
[0022] When the target image object is a BIOS, the image file in the spare flash chip of the BIOS of the server motherboard is copied to the flash chip to be programmed.
[0023] This invention also discloses an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;
[0024] The memory is used to store computer programs;
[0025] When the processor executes a program stored in the memory, it implements the method described in the embodiments of the present invention.
[0026] This invention also discloses a computer-readable storage medium storing instructions that, when executed by one or more processors, cause the processors to perform the methods described in this invention.
[0027] The embodiments of the present invention have the following advantages:
[0028] In this embodiment of the invention, the female pin interface of the programming socket is connected to the male pin interface of the server motherboard, and the protruding part of the programming socket cover is connected to the groove of the flash chip to be programmed, thereby forming a simple programming device. This structure can avoid the chip being burned when the flash chip to be programmed is placed upside down, and at the same time, it does not rely on corresponding software and hardware, which greatly reduces the cost of image programming.
[0029] Furthermore, in this embodiment of the invention, in response to the operation command of the programming button on the server motherboard, the target image object in the server motherboard is determined according to the instruction type of the operation command, and finally the flash chip to be programmed is programmed according to the target image object in the server motherboard. Thus, by operating the programming button on the server motherboard, it is more convenient to determine the target image object to be programmed and to program the target image object, which effectively simplifies the image programming process and improves the efficiency of the server in the production and R&D process. Attached Figure Description
[0030] Figure 1This is a schematic diagram of the structure of a programming device provided in an embodiment of the present invention;
[0031] Figure 2 This is a physical image of a programming socket provided in an embodiment of the present invention;
[0032] Figure 3 This is a flowchart of a programming method provided in an embodiment of the present invention;
[0033] Figure 4 This is a schematic diagram of the main programming process provided in an embodiment of the present invention;
[0034] Figure 5 This is a schematic diagram of the hardware structure of an electronic device that implements various embodiments of the present invention.
[0035] Figure label:
[0036] 1. Server motherboard; 2. Programming socket; 3. Programming socket cover; 4. Protrusion; 5. Groove; 6. Flash chip to be programmed; 7. Female pin interface; 8. Male pin interface. Detailed Implementation
[0037] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0038] To enable those skilled in the art to better understand the technical solutions of the embodiments of the present invention, some technical features involved in the embodiments of the present invention are explained and described below:
[0039] The Baseboard Management Controller (BMC) provides the intelligent features of the IPMI (Intelligent Platform Management Interface) architecture. It is a dedicated microcontroller embedded on the motherboard of a computer (typically a server), responsible for the interface between system management software and platform hardware. By acquiring the overall operating parameters of the BMC and the operating parameters of its main processes, its operational status can be monitored in real time. When a BMC malfunctions, the operating status of each process helps to pinpoint the cause of the failure, thus enabling more timely and effective handling of faults occurring during server management and meeting the requirements of next-generation platforms.
[0040] The BIOS (Basic Input Output System) is a set of programs embedded in a ROM (Read-Only Memory) chip on the computer's motherboard. It stores the computer's most important basic input / output programs, power-on self-test (POST) programs, and system boot programs. It can read and write specific system settings from the CMOS (Complementary Metal-Oxide Semiconductor). Its main function is to provide the lowest-level, most direct hardware settings and control for the computer. In addition, the BIOS provides some system parameters to the operating system. Changes to system hardware are hidden by the BIOS; programs use BIOS functions rather than directly controlling the hardware. Modern operating systems often bypass the abstraction layer provided by the BIOS and directly control hardware components.
[0041] Flash (Flash EEPROM Memory) is a type of memory chip that allows data to be modified through a specific program. In the electronics and semiconductor fields, flash often refers to "Flash Memory," which combines the advantages of ROM (Read-Only Memory) and RAM (Random Access Memory). It not only possesses the performance of EEPROM (Electrically Erasable Programmable Read-Only Memory) but also allows for fast data access from NVRAM (Non-Volatile Random Access Memory), ensuring data is not lost due to power outages.
[0042] As an example, in the process of server production and R&D, the BMC and BIOS image files stored in the server motherboard are often burned to the external flash chip using a programmer. However, the process of using programmers on the market is relatively cumbersome, which wastes time to some extent. In addition, programmers depend on corresponding software and hardware, which makes them somewhat dependent. Furthermore, when the external flash chip containing the BMC and BIOS is placed upside down in the programmer, it can cause the flash chip to be burned. Using a programmer to burn the image requires certain costs and affects the efficiency of server production and R&D.
[0043] One of the core inventive points of this invention is that the female pin interface of the programming socket connects to the male pin interface of the server motherboard, and the protruding part of the programming socket cover connects to the groove of the flash chip to be programmed, thus forming a simple programming device. This structure avoids the chip being burned out when the chip is placed upside down, and it eliminates the need for corresponding software and hardware, greatly reducing the cost of image programming. Furthermore, in response to the operation command of the programming button on the server motherboard, the target image object on the server motherboard is determined according to the command type, and finally, the flash chip to be programmed is programmed based on the target image object on the server motherboard. Therefore, by operating the programming button on the server motherboard, the target image object to be programmed can be more easily identified and programmed, effectively simplifying the image programming process and improving the efficiency of server production and R&D.
[0044] Reference Figure 1 The diagram shows a schematic of a programming device provided in an embodiment of the present invention. The programming device includes a programming socket 2, a server motherboard 1 and a flash chip 6 to be programmed. The programming socket 2 is provided with a female pin interface 7 and a programming socket cover 3. The server motherboard 1 is provided with a male pin interface 8.
[0045] The female pin interface 7 on the programming socket 2 and the male pin interface 8 on the server motherboard 1 are special interfaces reserved during the production process. The female pin interface 7 on the programming socket 2 and the male pin interface 8 on the server motherboard 1 can be matched one-to-one, thereby reducing the error rate of the connection between the two.
[0046] In a practical implementation, the female pin interface 7 of the programming socket 2 can be connected to the male pin interface 8 of the server motherboard 1. For example, the programming socket 2 can be expanded into a separate component, as described in [reference needed]. Figure 2The diagram shows a physical image of a programming socket provided in an embodiment of the present invention. If the programming socket 2 is to be expanded into a separate component, a cable is needed to connect the female pin interface 7 of the programming socket 2 to the male pin interface 8 on the server motherboard 1. Alternatively, in the early stages of project development, the programming socket 2 can be directly soldered to the server motherboard 1. In this case, the female pin interface 7 of the programming socket 2 and the male pin interface 8 on the server motherboard 1 must be matched one-to-one. The programming socket 2, already soldered to the server motherboard 1, can be removed at the factory because... Therefore, the female pin interface 7 on the programming socket 2 is connected to the male pin interface 8 on the server motherboard 1, which simplifies the connection steps, reduces the error rate of the connection, and improves the matching degree. As for the connection method between the programming socket 2 and the server motherboard 1, it can be achieved by connecting the female pin interface 7 of the programming socket 2 and the male pin interface 8 of the server motherboard 1 through a cable, or it can be achieved by directly soldering the female pin interface 7 of the programming socket 2 and the male pin interface 8 of the server motherboard 1. This invention does not limit this.
[0047] The flash chip 6 to be programmed is placed on the programming socket 2, and the target image object on the server motherboard 1 is programmed into the chip. In a typical design, the flash chip has a recess 5.
[0048] Since most programmers on the market do not have a protrusion 4, they are often placed upside down during use. When the flash chip 6 to be programmed is placed upside down in the programmer, it will burn out. However, in this embodiment of the invention, the programming socket cover 3 has a protrusion 4, and the flash chip 6 to be programmed originally has a groove 5. That is, the protrusion 4 of the programming socket cover 3 can be inserted into the groove 5 on the flash chip 6 to be programmed, so as to achieve the correct placement of the flash chip 6 to be programmed. Thus, by setting the corresponding interface position, it can prevent the flash chip 6 to be programmed from being placed upside down in the programming socket 2 and causing the chip to burn out.
[0049] The server motherboard 1 is also equipped with a burning button, which is used to determine the target image object to be burned on the server motherboard 1 and to control the start and end of the image burning process. This makes the burning process independent of corresponding software and hardware, effectively simplifying the image burning process and improving the efficiency of the server in the production and research and development process.
[0050] The server motherboard 1 is also equipped with indicator lights. The indicator lights are used to indicate the target image object to be burned into the server motherboard 1, and to indicate the burning status of the target image object into the server motherboard 1. The burning status includes at least the burning completion status. By setting indicator lights, the status of the burning process can be made more intuitive.
[0051] In the above-described embodiments, when it is necessary to connect the programming socket 2 to the server motherboard 1, the flash chip 6 to be programmed can be inserted into the programming socket 2 first. That is, the groove 5 of the flash chip 6 to be programmed is aligned with the protrusion 4 on the programming socket cover 3 to prevent the flash chip 6 to be programmed from being placed upside down in the programming socket 2 and thus burning the chip. Then, the female pin interface 7 of the programming socket 2 is connected to the male pin interface 8 of the server motherboard 1 to form a simple programming device. This eliminates the need for corresponding software and hardware, effectively simplifying the image programming process and improving the efficiency of the server in the production and R&D process.
[0052] In addition, the server motherboard 1 also includes a mirror object. The mirror object of the server motherboard 1 includes at least one of the Baseboard Management Controller (BMC) and the Basic Input / Output System (BIOS). The BMC includes at least the BMC main flash chip and the BMC spare flash chip, and the BIOS includes at least the BIOS main flash chip and the BIOS spare flash chip.
[0053] The main flash chip and the backup flash chip of the BMC or BIOS have the same data, but the target image object to be burned comes from the BMC backup flash chip or the BIOS backup flash chip on the server motherboard 1. Whether it comes from the BMC backup flash chip or the BIOS backup flash chip depends on the operation command type of the burning button on the server motherboard 1.
[0054] In this embodiment of the invention, the female pin interface 7 of the programming socket 2 is connected to the male pin interface 8 of the server motherboard 1, and the protruding part 4 of the programming socket cover 3 is connected to the groove 5 of the flash chip 6 to be programmed, thereby forming a simple programming device. This structure can avoid the chip being burned when the flash chip 6 to be programmed is placed upside down. At the same time, it does not rely on corresponding software and hardware, which greatly reduces the cost of image programming and effectively simplifies the image programming process, improving the efficiency of the server in the production and research and development process.
[0055] This invention also provides a programming method, applied to the programming apparatus described above, with reference to... Figure 3 The diagram illustrates a flowchart of a programming method provided in an embodiment of the present invention, which may specifically include the following steps:
[0056] Step 301: In response to the operation command of the burning button on the server motherboard, determine the target image object in the server motherboard according to the instruction type of the operation command;
[0057] For a server motherboard, it may include a male pin interface, a programming button, indicator lights, and a mirror object. The male pin interface can connect to the female pin interface of a programming socket, enabling a simple and convenient connection without complex steps. The programming button can be a one-click programming button on the server motherboard, used to determine the target mirror object to be programmed on the server motherboard and to control the start and end of the programming process. The indicator lights can indicate the target mirror object to be programmed on the server motherboard and its programming status, including at least a programming completion status. The mirror object includes at least one of a Baseboard Management Controller (BMC) and a Basic Input / Output System (BIOS), wherein the BMC includes at least a main BMC flash chip and a spare BMC flash chip, and the BIOS includes at least a main BIOS flash chip and a spare BIOS flash chip.
[0058] The programming socket can be a base that connects to the server motherboard. It connects to the male pin interface of the server motherboard through its female pin interface. The programming socket also includes a programming socket cover with a raised part.
[0059] When performing image flashing on a server motherboard, the flashing button on the server motherboard can be pressed. When the operation command type is double-click, the BMC is identified as the target image object on the server motherboard; when the operation command type is single-click, the BIOS is identified as the target image object on the server motherboard. Thus, the target image object on the server motherboard can be determined according to different command types of the flashing button operation. When the target image object to be flashed is the BMC, the indicator light on the server motherboard remains solid red; when the target image object to be flashed is the BIOS, the indicator light on the server motherboard remains flashing red. When the target image object flashing is complete, the indicator light on the server motherboard will automatically switch to green.
[0060] In one exemplary embodiment, an operator can press the programming button on the server motherboard. The first press indicates the start of programming. When the operator needs to program the image corresponding to the BMC on the server motherboard, they can press the programming button twice consecutively. The server motherboard will then begin programming the image corresponding to the BMC. During this process, the indicator light on the server motherboard will remain solid red until the programming is complete. Similarly, when the operator needs to program the image corresponding to the BIOS on the server motherboard, they can press the programming button once. The server motherboard will then begin programming the image corresponding to the BIOS. During this process, the indicator light on the server motherboard will flash red until the programming is complete. Once the target image is programmed, the indicator light on the server motherboard will automatically turn green. At this point, pressing the programming button again will terminate all processes.
[0061] In this embodiment of the invention, in response to the operation command of the programming button on the server motherboard, the target image object in the server motherboard is determined according to the instruction type of the operation command. Thus, by operating the programming button on the server motherboard, it is more convenient to determine the target image object to be programmed and to program the target image object, which effectively simplifies the image programming process and improves the efficiency of the server in the production and R&D process.
[0062] Step 302: Program the flash chip to be programmed according to the target image object in the server motherboard.
[0063] The flash chip to be programmed can be a third external flash chip, other than the flash chip in the motherboard's BMC or BIOS. It is placed on a special programming socket. The flash chip to be programmed has a groove, which allows the flash chip to be programmed to be placed in accordance with the protrusion on the programming socket cover. This avoids the situation where the flash chip is burned out when it is placed upside down in the programming socket.
[0064] In one exemplary embodiment, a server motherboard typically contains two chips: a BMC and a BIOS. Both the BMC and BIOS generally have a main flash chip and a spare flash chip. The source of the target image object is mainly to copy the image file from the spare flash chip of the BMC or BIOS on the server motherboard. The BMC on the server motherboard is used as a programming controller. When the BMC controller detects that the programming button is pressed, it can copy the BMC or BIOS image file from the spare flash chip to a third external flash chip to be programmed. The third external flash chip to be programmed is placed on a programming socket.
[0065] In this embodiment of the invention, in response to an operation command on the programming button of the server motherboard, the target image object in the server motherboard is determined according to the command type of the operation command, and finally, the flash chip to be programmed is programmed according to the target image object in the server motherboard. This embodiment of the invention allows for easier determination of the target image object to be programmed by operating the programming button on the server motherboard, and effectively simplifies the image programming process, improving the efficiency of server production and R&D.
[0066] In an optional embodiment of the present invention, step 301, determining the target image object in the server motherboard according to the instruction type of the operation instruction, includes:
[0067] When the instruction type of the operation command is double-click, the BMC is identified as the target image object in the server motherboard;
[0068] When the instruction type of the operation command is click, the BIOS is identified as the target image object in the server motherboard.
[0069] Among them, the operation command can be the action of the operator pressing the button on the server motherboard; the command type can be a double-click or a single-click operation.
[0070] In an exemplary embodiment, when the server motherboard is connected to the programming socket, the operator can press the programming button on the server motherboard to start the image programming process. Specifically, double-clicking the programming button on the server motherboard will start programming the image corresponding to the BMC. Similarly, clicking the programming button on the server motherboard will start programming the image corresponding to the BIOS. In addition, the programming button on the server motherboard can be pressed at any time during this process to terminate the process.
[0071] In this embodiment of the invention, when the operation instruction type is double-click, the BMC is identified as the target image object in the server motherboard; when the operation instruction type is single-click, the BIOS is identified as the target image object in the server motherboard. By operating the burning button on the server motherboard, it is easier to identify the target image object to be burned and burn the target image object, effectively simplifying the image burning process and improving the efficiency of the server in the production and R&D process.
[0072] In an optional embodiment of the present invention, it further includes:
[0073] When the target image object to be burned is BMC, the indicator light on the server motherboard remains solid red.
[0074] When the target image object to be burned is a BIOS, the indicator light on the server motherboard remains in a flashing red state;
[0075] When the target image object is successfully burned, the indicator light on the server motherboard will automatically switch to green.
[0076] The indicator light is a programming indicator light on the server motherboard, used to indicate the target image object being programmed into the server motherboard, and to indicate the programming status of the target image object in the server motherboard. The programming status includes at least the programming completion status.
[0077] In an exemplary embodiment, when programming a predetermined target image object, if the target image object to be programmed is a BMC, the indicator light on the server motherboard will remain solid red; if the target image object to be programmed is a BIOS, the indicator light on the server motherboard will remain flashing red; when the programming of the target image object is complete, the indicator light on the server motherboard will automatically switch to green. By setting the programming indicator light, the type of the target image object to be programmed on the server motherboard and the programming status of the target image object on the server motherboard can be indicated, which facilitates the operator's real-time monitoring of the programming process.
[0078] In an optional embodiment of the present invention, step 302, programming the flash chip to be programmed according to the target image object in the server motherboard, includes:
[0079] When the target image object is BMC, the image file in the BMC spare flash chip of the server motherboard is copied to the flash chip to be programmed.
[0080] When the target image object is a BIOS, the image file in the spare flash chip of the BIOS of the server motherboard is copied to the flash chip to be programmed.
[0081] Among them, the spare flash chip stores the same data as the main flash chip on the server motherboard. The spare flash chip is mainly used to copy its internal image file to the flash chip to be programmed. The flash chip to be programmed is an external chip placed on the programming socket and is used to store the image file to be programmed.
[0082] In one exemplary embodiment, a server motherboard typically has a BMC and a BIOS. These two chips contain corresponding main flash chips and spare flash chips, with each flash chip containing an image file. Assuming the target image to be programmed is the BMC, programming can begin by double-clicking the programming button on the server motherboard. The target image to be programmed is the image file in the spare flash of the BMC on the server motherboard. Similarly, assuming the target image to be programmed is the BIOS, programming can begin by clicking the programming button on the server motherboard. The target image to be programmed is the image file in the spare flash of the BIOS on the server motherboard.
[0083] In this embodiment of the invention, when the target image object is BMC, the image file in the spare flash chip of BMC on the server motherboard is copied to the flash chip to be programmed; when the target image object is BIOS, the image file in the spare flash chip of BIOS on the server motherboard is copied to the flash chip to be programmed. This makes full use of the stored data in the spare flash on the server motherboard, highlighting the importance of spare data.
[0084] To enable those skilled in the art to better understand the technical solutions of the embodiments of the present invention, specific examples are provided below for illustrative purposes.
[0085] Reference Figure 4This is a schematic diagram of the main process of programming provided in an embodiment of the present invention. Specifically, it may include: using the BMC on the server motherboard as a programming controller, which can be equivalent to a central controller. As shown in the figure, the BMC controller can interact with the BMC main flash chip, the BMC backup flash chip, the BIOS main flash chip, the BIOS backup flash chip, the programming button (one-click programming button in the figure) and the flash chip to be programmed. The indicator light (programming indicator light in the figure) does not interact with the BMC controller, but can be controlled by the BMC controller to light up or turn off.
[0086] In the specific implementation, the overall operating parameters of BMC and the operating parameters of the main processes are obtained to monitor the operating status of BMC in real time. When BMC fails, the operating status of each process is used to help locate the cause of the failure. This allows for more timely and effective handling of failures that occur during server management, meeting the requirements of the new generation platform.
[0087] Specifically, the image object of the server motherboard includes at least one of the BMC and BIOS. The BMC includes at least the BMC main flash chip and the BMC spare flash chip, and the BIOS includes at least the BIOS main flash chip and the BIOS spare flash chip. The main flash chip and the spare flash chip of the BMC or BIOS have the same data, but the target image object to be burned comes from the BMC spare flash chip or the BIOS spare flash chip on the server motherboard. Whether the image file in the BMC spare flash chip or the BIOS spare flash chip is burned depends on the type of operation command given by the operator to the burning button on the server motherboard. The operation command type to the burning button on the server motherboard can be a double-click operation or a single-click operation. In addition, the flash chip to be programmed is an external chip, placed on the programming socket. The groove on the flash chip to be programmed can be aligned with the protrusion on the programming socket cover. This is used to copy the image file of the spare flash chip on the server motherboard to the flash chip to be programmed. The BMC controller in the figure also has a programming button on its side, which can control the start and stop of image programming, as well as control whether the image to be programmed is the image corresponding to the BMC or the image corresponding to the BIOS. In addition, there is an indicator light, which can be used to indicate the target image object to be programmed on the server motherboard, and to indicate the programming status of the target image object on the server motherboard. The programming status includes at least the programming completion status.
[0088] In one exemplary embodiment, the external flash chip to be programmed is first placed on the programming socket, with the recessed portion of the flash chip corresponding to the protruding portion of the programming socket cover. The programming socket is then connected to the server motherboard via a "pin-to-pin" connection, where the female pin of the programming socket is connected to the male pin of the server motherboard. The server motherboard then controls the image programming, using the BMC on the server motherboard as the programming controller. When the BMC controller detects the programming button being pressed, the image programming process is initiated. For example, if the image corresponding to the BMC on the server motherboard needs to be programmed, the programming button on the server motherboard can be pressed twice consecutively. This identifies the BMC as the target image object to be programmed on the server motherboard, and programming then begins. The image file programmed to the flash chip originates from the BMC spare flash chip on the server motherboard. During the burning process, the indicator light on the server motherboard will remain solid red until the target image object is successfully burned, at which point the indicator light will automatically switch to green. Similarly, if you need to burn the image corresponding to the BIOS on the server motherboard, you can click the burn button. This will identify the BIOS as the target image object to be burned on the server motherboard, and then the burning process will begin. The image file burned to the flash chip comes from the BIOS's spare flash chip on the server motherboard. During the burning process, the indicator light on the server motherboard will remain flashing red until the target image object is successfully burned, at which point the indicator light will automatically switch to green.
[0089] In this embodiment of the invention, in response to the operation command of the programming button on the server motherboard, the target image object in the server motherboard is determined according to the instruction type of the operation command, and finally the flash chip to be programmed is programmed according to the target image object in the server motherboard. Thus, by operating the programming button on the server motherboard, the target image object to be programmed can be determined more conveniently, and the target image object can be programmed, which effectively simplifies the image programming process and improves the efficiency of the server in the production and R&D process.
[0090] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of the present invention are not limited to the described order of actions, because according to the embodiments of the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present invention.
[0091] In addition, this invention also provides an electronic device, including: a processor, a memory, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, it implements the various processes of the above-described burning method embodiments and achieves the same technical effect. To avoid repetition, it will not be described again here.
[0092] This invention also provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the various processes of the above-described burning method embodiments and achieves the same technical effect. To avoid repetition, it will not be described again here. The computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.
[0093] Figure 5 A schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention.
[0094] The electronic device 500 includes, but is not limited to, components such as: a radio frequency unit 501, a network module 502, an audio output unit 503, an input unit 504, a sensor 505, a display unit 506, a user input unit 507, an interface unit 508, a memory 509, a processor 510, and a power supply 511. Those skilled in the art will understand that... Figure 5 The electronic device structures shown are not intended to limit the electronic device. An electronic device may include more or fewer components than shown, or combine certain components, or have different component arrangements. In embodiments of the present invention, the electronic device includes, but is not limited to, mobile phones, tablet computers, laptops, PDAs, in-vehicle terminals, wearable devices, and pedometers.
[0095] It should be understood that, in this embodiment of the invention, the radio frequency unit 501 can be used for receiving and transmitting signals during information transmission or calls. Specifically, it receives downlink data from the base station and processes it with the processor 510; additionally, it transmits uplink data to the base station. Typically, the radio frequency unit 501 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low-noise amplifier, a duplexer, etc. Furthermore, the radio frequency unit 501 can also communicate with networks and other devices through a wireless communication system.
[0096] The electronic device provides users with wireless broadband internet access through the network module 502, such as helping users send and receive emails, browse web pages, and access streaming media.
[0097] The audio output unit 503 can convert audio data received by the radio frequency unit 501 or the network module 502 or stored in the memory 509 into audio signals and output them as sound. Furthermore, the audio output unit 503 can also provide audio output related to specific functions performed by the electronic device 500 (e.g., call signal reception sound, message reception sound, etc.). The audio output unit 503 includes a speaker, a buzzer, and a receiver, etc.
[0098] Input unit 504 is used to receive audio or video signals. Input unit 504 may include a graphics processing unit (GPU) 5041 and a microphone 5042. The GPU 5041 processes image data of still images or videos acquired by an image capture device (such as a camera) in video capture mode or image capture mode. The processed image frames can be displayed on display unit 506. The image frames processed by GPU 5041 can be stored in memory 509 (or other storage medium) or transmitted via radio frequency unit 501 or network module 502. Microphone 5042 can receive sound and process such sound into audio data. The processed audio data can be converted into a format that can be transmitted to a mobile communication base station via radio frequency unit 501 in telephone call mode.
[0099] The electronic device 500 also includes at least one sensor 505, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor includes an ambient light sensor and a proximity sensor. The ambient light sensor can adjust the brightness of the display panel 5061 according to the ambient light level, and the proximity sensor can turn off the display panel 5061 and / or backlight when the electronic device 500 is moved to the ear. As a type of motion sensor, an accelerometer sensor can detect the magnitude of acceleration in various directions (generally three axes). When stationary, it can detect the magnitude and direction of gravity and can be used to identify the posture of the electronic device (such as landscape / portrait switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc. The sensor 505 may also include a fingerprint sensor, pressure sensor, iris sensor, molecular sensor, gyroscope, barometer, hygrometer, thermometer, infrared sensor, etc., which will not be described in detail here.
[0100] The display unit 506 is used to display information input by the user or information provided to the user. The display unit 506 may include a display panel 5061, which may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
[0101] User input unit 507 can be used to receive input numerical or character information, and to generate key signal inputs related to user settings and function control of electronic devices. Specifically, user input unit 507 includes a touch panel 5071 and other input devices 5072. Touch panel 5071, also known as a touch screen, can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near touch panel 5071). Touch panel 5071 may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 510, which receives and executes commands from the processor 510. In addition, touch panel 5071 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. Besides touch panel 5071, user input unit 507 may also include other input devices 5072. Specifically, other input devices 5072 may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, power buttons, etc.), trackballs, mice, joysticks, etc., which will not be described in detail here.
[0102] Furthermore, the touch panel 5071 can cover the display panel 5061. When the touch panel 5071 detects a touch operation on or near it, it transmits the information to the processor 510 to determine the type of touch event. Subsequently, the processor 510 provides corresponding visual output on the display panel 5061 based on the type of touch event. Although in Figure 5 In this embodiment, the touch panel 5071 and the display panel 5061 are two independent components to realize the input and output functions of the electronic device. However, in some embodiments, the touch panel 5071 and the display panel 5061 can be integrated to realize the input and output functions of the electronic device. The specific implementation is not limited here.
[0103] Interface unit 508 serves as an interface for connecting external devices to electronic device 500. For example, external devices may include a wired or wireless headphone port, an external power supply (or battery charger) port, a wired or wireless data port, a memory card port, a port for connecting a device with an identification module, an audio input / output (I / O) port, a video I / O port, a headphone port, and so on. Interface unit 508 can be used to receive input from external devices (e.g., data, power, etc.) and transmit the received input to one or more components within electronic device 500, or it can be used to transmit data between electronic device 500 and external devices.
[0104] The memory 509 can be used to store software programs and various data. The memory 509 may primarily include a program storage area and a data storage area. The program storage area may store the operating system, applications required for at least one function (such as sound playback, image playback, etc.), etc.; the data storage area may store data created based on the use of the mobile phone (such as audio data, phonebook, etc.). Furthermore, the memory 509 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0105] The processor 510 is the control center of the electronic device. It connects various parts of the electronic device via various interfaces and lines. By running or executing software programs and / or modules stored in the memory 509, and by calling data stored in the memory 509, it performs various functions and processes data, thereby providing overall monitoring of the electronic device. The processor 510 may include one or more processing units; preferably, the processor 510 may integrate an application processor and a modem processor. The application processor mainly handles the operating system, user interface, and applications, while the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into the processor 510.
[0106] The electronic device 500 may also include a power supply 511 (such as a battery) for supplying power to various components. Preferably, the power supply 511 can be logically connected to the processor 510 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system.
[0107] In addition, the electronic device 500 includes some functional modules not shown, which will not be described in detail here.
[0108] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0109] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0110] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of the present invention.
[0111] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed in this invention can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0112] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0113] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0114] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0115] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0116] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, essentially, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0117] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A programming device, characterized in that, The system includes a programming socket, a server motherboard, and a flash chip to be programmed. The flash chip has a recessed groove. The server motherboard includes a male pin interface. The programming socket includes a female pin interface adapted to the male pin interface of the server motherboard and a programming socket cover. The programming socket cover has a protrusion adapted to the recessed groove of the flash chip to be programmed. The programming socket is connected to the male pin interface of the server motherboard via the female pin interface, and is connected to the groove of the flash chip to be programmed via the protruding part of the programming socket cover; the connection method between the female pin interface of the programming socket and the male pin interface of the server motherboard includes cable connection or soldering. The server motherboard also includes a programming button, which is used to determine the target image object to be programmed into the server motherboard and to control the start and end of programming. The server motherboard also includes a mirror object, indicator lights, and a programming controller. The programming controller is used to interact with the mirror object, the programming button, and the flash chip to be programmed, and to control the indicator lights to turn on and off. The indicator lights are used to indicate the target mirror object to be programmed in the server motherboard. The mirror object includes at least one of a Baseboard Management Controller (BMC) and a Basic Input / Output System (BIOS). The BMC includes at least a BMC main flash chip and a BMC backup flash chip, and the BIOS includes at least a BIOS main flash chip and a BIOS backup flash chip.
2. The programming apparatus according to claim 1, characterized in that, The indicator light is used to indicate the burning status of the target image object in the server motherboard; the burning status includes at least the burning completion status.
3. A programming method, characterized in that, The method, applied to the programming apparatus as described in any one of claims 1 to 2, comprises: In response to an operation command on the programming button of the server motherboard, the target image object in the server motherboard is determined according to the command type of the operation command, including: when the command type of the operation command is double-click, the BMC is determined as the target image object in the server motherboard; when the command type of the operation command is single-click, the BIOS is determined as the target image object in the server motherboard; the programming button is also configured to start the image programming process and perform a termination operation; The flash chip to be programmed is programmed according to the target image object in the server motherboard, including: when the target image object is BMC, copying the image file in the BMC spare flash chip of the server motherboard to the flash chip to be programmed; when the target image object is BIOS, copying the image file in the BIOS spare flash chip of the server motherboard to the flash chip to be programmed.
4. The method according to claim 3, characterized in that, Also includes: When the target image object to be burned is BMC, the indicator light on the server motherboard remains solid red. When the target image object to be burned is a BIOS, the indicator light on the server motherboard remains in a flashing red state; When the target image object is successfully burned, the indicator light on the server motherboard will automatically switch to green.
5. An electronic device, characterized in that, It includes a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus; The memory is used to store computer programs; When the processor executes a program stored in the memory, it implements the method as described in any one of claims 3-4.
6. A computer-readable storage medium having instructions stored thereon that, when executed by one or more processors, cause the processors to perform the method as described in any one of claims 3-4.
Citation Information
Patent Citations
Burning device, program burning method and readable storage medium
CN109992274A