Starting method and device of system on chip, storage medium and electronic equipment
By searching and starting management nodes on the control network of the crystal system, the management node drives the edge startup device to start computing nodes and non-computing nodes, the problem of no ROM startup on the crystal system is solved, and the effect of independent startup and minimized hardware occupation is achieved.
Patent Information
- Application Number
- CN202510022203.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-07
- Publication Date
- 2025-04-18
- Estimated Expiration
- 2045-01-07
AI Technical Summary
Due to the lack of self-start ROM, the crystal system faces the challenge of starting internal nodes under ROM-free conditions. The existing ROM-free startup solution cannot fully adapt to the crystal system, resulting in excessive hardware usage and unindependent startup.
By searching and starting at least one available node on the control network as a management node, the management node drives the edge startup device to start the computing node, and by controlling the network to deploy and start non-computing nodes, the independent startup of the system on crystal is achieved.
It enables independent startup of the crystal system without adding too much hardware, meeting the startup needs of the crystal system for high efficiency and low power consumption.
Smart Images

Figure CN119847638A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of on-chip systems, and in particular to a method, device, storage medium and electronic device for starting an on-chip system. Background Art
[0002] With the development of science and technology, applications in the fields of machine learning, artificial intelligence, high-performance computing, big data processing, cloud computing, etc. require a lot of computing and frequent access to data, and the demand for processor computing power continues to increase. Moreover, increasing the integration of chips will face greater power consumption and heat dissipation problems. According to the research of A. Mehonic & A. Kenyonde, since 2018, the demand for computing power has doubled at a rate of about two months. A single processor can no longer meet the needs of large-scale data processing. Even if the power consumption and heat dissipation of the chip are not considered, the problem of chip yield also makes it impossible to increase the area of the chip at will. Insufficient computing power has become a bottleneck for the development of science and technology. Therefore, in order to meet the increasing demand for computer computing power and memory bandwidth in applications in various fields, multi-chip modules composed of multiple small chips have begun to emerge. Such multi-chip modules have advantages in output and cost, but they require dense interconnection to facilitate I / O circuits between chips and require advanced packaging technology to keep their operation low power consumption. Therefore, System on Wafer (SoW), that is, wafer-level system, has once again emerged with its advantages of high interconnection bandwidth, power density, reduced data transmission requirements, and reduced computing complexity.
[0003] The system on wafer is a large and compact solution that integrates a large number of chips, power supplies, memory and other modules. It directly uses the complete wafer substrate as the interconnection base of each module inside the system, and realizes a complete system on a wafer densely covered with various chips. Because there is no need for a substrate or PCB board, the system on wafer can use finer routing to package the chip more tightly to provide higher bandwidth and lower latency, and can significantly reduce power consumption when transmitting large amounts of data.
[0004] In order to further improve the performance of the wafer system, the Software Defined System on Wafer (SDSoW) came into being. The system supports software-defined connection methods and can even software-define the functions of each module itself. From a system perspective, the software-defined wafer system breaks through the process limitations on improving chip integration, taking into account high performance, high energy efficiency, and high security, while having excellent flexibility and scalability. Through this technology, the integration of the wafer system can be further improved, the system performance can be optimized, the increasingly complex and diverse application requirements can be met, and the advancement of science and technology can be promoted.
[0005] However, the on-wafer system faces many challenges. Compared with the traditional computer architecture, the on-wafer system has many characteristics that are completely different from the classic architecture due to its unique high integration and architecture. For example, the on-wafer system faces the problem of wafer defects, needs to use and save hardware resources more efficiently, and needs to develop an operating system that is more suitable for the interconnection scenario of small chiplets. In terms of system startup, the on-wafer system also faces challenges. Since a large number of chiplets need to be integrated, each chip needs to integrate more hardware functions and higher computing power in a smaller size. Therefore, most chiplets are not equipped with their own proprietary self-starting ROM (Read-Only Memory). This means that when the system needs to start, it must rely on external startup signals. In addition, due to the structural characteristics of the on-wafer system, I / O chips (Input / Output Chip) are usually distributed on the periphery of the system to communicate with external devices. However, this also means that when the on-wafer system needs to be started, it must first be powered on at the periphery, and then the startup signal must be transmitted to the internal chiplets in some way. Therefore, how to effectively start the internal nodes without ROM by powering on the periphery is one of the key issues facing the on-wafer system.
[0006] In addition to general-purpose processors, the on-chip system also integrates a large number of nodes dedicated to a specific field of function, such as neural network accelerators, digital signal processors, etc., so that the on-chip system can cope with complex computing needs and offload tasks to dedicated nodes for different computing needs to achieve high-performance computing. Different from the relationship between the central processing unit and the coprocessor in the traditional architecture, the dedicated hardware unit usually has a symmetrical structural position with the computing node in the interconnection network of the on-chip system. During the system startup process, the relationship between the dedicated hardware unit and the general-purpose processor is processed to ensure that when the system starts, all general-purpose processors and dedicated hardware units can be correctly initialized and configured so that they can work normally. Furthermore, whether the system supports dynamic adjustment of the working status of these devices to adapt to the ever-changing computing needs during operation constitutes a key issue faced by the on-chip system that is different from the traditional computer architecture.
[0007] There are many ROM-free system startup solutions, and the fields involved are also quite broad. For example, in the field of supercomputing, the system can be started by deploying an external management node containing ROM to connect the internal computing and I / O systems. Intel has developed a ROM-free startup solution called PXE (Preboot Execution Environment), which can access the network and obtain the boot program from the outside to achieve hardware startup. Although there are many ROM-free startup solutions used in the computer field, there is currently no public startup solution that is fully adapted to the on-chip system. For example, for the on-chip system, since its application scenario is different from that of supercomputing, it is neither convenient nor reliable to use an external management node containing ROM to achieve startup. In addition, the PXE solution has high requirements for network devices. It requires a network card device that supports various application layer protocols. For a system on the chip, deploying a network card that supports various network functions on the on-chip system for the system startup function will cause serious waste. Therefore, the on-chip system urgently needs to study a technical solution that can minimize hardware occupancy and achieve independent startup.
[0008] In summary, the existing technology obviously has inconveniences and defects in practical use, so it is necessary to improve it. Summary of the invention
[0009] In view of the above-mentioned defects, an object of the present invention is to provide a method, device, storage medium and electronic device for starting a system on a chip, which can minimize the hardware occupation and realize independent starting of the system on a chip.
[0010] In order to solve the above-mentioned technical problems, the present invention is achieved as follows:
[0011] In a first aspect, an embodiment of the present invention provides a method for starting an on-wafer system, the method comprising:
[0012] Start the edge startup device and control network of the Jingshang system;
[0013] Searching for and starting at least one available node on the control network as a management node;
[0014] The management node drives the edge startup device to start at least one computing node;
[0015] The management node deploys and starts at least one non-computing node through the control network.
[0016] According to the on-chip system startup method of the present invention, the step of searching and starting at least one available node on the control network as a management node comprises:
[0017] Searching and starting at least one available node on the control network as the management node through a query / response mode;
[0018] The management node obtains a first boot program, and writes the first boot program into the management node;
[0019] After the management node is started, an additional file system is mounted from an external NFS file server through a user terminal;
[0020] The step of the management node driving the edge startup device to start at least one computing node includes:
[0021] The management node drives the edge startup device to start at least one of the computing nodes;
[0022] The management node obtains a second boot program, and writes the second boot program into each of the computing nodes, so that each of the computing nodes uses the same second boot program;
[0023] The step of deploying and starting at least one non-computing node by the management node through the control network includes:
[0024] The management node downloads the driver from the NFS file server through the control network;
[0025] The management node deploys and starts at least one of the non-computing nodes according to the driver program;
[0026] The management node obtains the third boot program and writes the third boot program into the non-computing nodes, and each of the non-computing nodes uses a dedicated third boot program.
[0027] According to the on-chip system startup method of the present invention, the step of the management node acquiring a first boot program and writing the first boot program into the management node includes:
[0028] The management node obtains the first boot program;
[0029] Powering on the random access memory of the management node;
[0030] Writing the first boot program into the random access memory of the management node;
[0031] Receive the information summary algorithm verification from the outside, and after passing the verification, power on the central processor of the management node.
[0032] According to the on-chip system startup method of the present invention, the step of searching and starting at least one available node on the control network as the management node in the inquiry / response mode includes:
[0033] The edge startup device broadcasts a query packet to each routing node in the on-chip interconnection network;
[0034] When the routing node obtains the query packet, if the routing node is an available node, it returns a response message to the edge startup device;
[0035] The edge startup device uses the routing node that responds fastest as the management node of the system, and declares the management node as the master node by setting up an internal software network connection.
[0036] According to the method for starting a system on a chip according to the present invention, the step of starting a control network of the system on a chip includes:
[0037] Perform hardware self-test to check the hardware integrity of the corresponding node;
[0038] Initialize input buffer;
[0039] Initialize the routing calculation unit, including setting routing algorithms and parameters;
[0040] Initialize virtual channel allocator and subchannel allocator;
[0041] Initialize the circuit switched fabric.
[0042] According to the on-chip system startup method of the present invention, the step of the management node driving the edge startup device to start the computing node further includes:
[0043] The management node obtains characteristic information of each computing node, and loads the characteristic information to the corresponding computing node for personalized configuration, and the computing nodes are organized into module groups according to the characteristic information;
[0044] The characteristic information includes the IP address, MAC address, node identification and / or node coordinates of each computing node.
[0045] According to the on-chip system startup method of the present invention, after the management node deploys and starts the non-computing node through the control network, the method includes:
[0046] Each of the module groups is started in sequence according to the module group identifier;
[0047] Each module group determines whether the distance between itself and the original management node exceeds a predetermined distance threshold;
[0048] If the distance threshold is exceeded, searching and starting an available node as a new management node through the inquiry / response mode;
[0049] If the distance does not exceed the threshold, all nodes in the module group are started through the original management node.
[0050] In a second aspect, an embodiment of the present invention provides a startup device for an on-wafer system constructed based on any one of the methods described above, the device comprising:
[0051] The device startup module is used to start the edge startup device and control network of the on-chip system;
[0052] A management node startup module, used to search for and start at least one available node on the control network as a management node;
[0053] A computing node startup module, used for the management node to drive the edge startup device to start at least one computing node;
[0054] A non-computing node startup module, wherein the management node deploys and starts at least one non-computing node through the control network.
[0055] In a third aspect, an embodiment of the present invention provides a storage medium for storing a computer program for executing any one of the on-wafer system startup methods.
[0056] In a fourth aspect, an embodiment of the present invention provides an electronic device, comprising a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, wherein the processor implements any one of the on-chip system startup methods when executing the computer program.
[0057] The startup technology of the on-chip system of the present invention includes: starting the edge startup device and control network of the on-chip system; searching and starting at least one available node on the control network as a management node; the management node drives the edge startup device to start at least one computing node; the management node deploys and starts at least one non-computing node through the control network. In this way, the present invention solves the problem of ROM-free system startup of the existing on-chip system in view of the characteristics of the on-chip system having a small available area and high power consumption requirements, which can minimize hardware occupancy and realize independent startup of the on-chip system. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 1 is a flow chart of a method for starting a system on a wafer provided in the first embodiment of the present invention;
[0059] Figure 2 is a flow chart of a method for starting a system on a wafer provided in Embodiment 2 of the present invention;
[0060] Figure 3 is a schematic diagram of the structure of a starting device for an on-chip system provided in Embodiment 1 of the present invention;
[0061] Figure 4 is a schematic diagram of the structure of a starting device for an on-chip system provided in Embodiment 2 of the present invention;
[0062] Figure 5 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0063] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0064] It should be noted that references to "one embodiment", "embodiment", "example embodiment", etc. in this specification refer to the embodiment described, which may include specific features, structures or characteristics, but not every embodiment must include these specific features, structures or characteristics. In addition, such expressions do not refer to the same embodiment. Furthermore, when describing specific features, structures or characteristics in conjunction with an embodiment, whether or not there is an explicit description, it has been shown that it is within the knowledge of those skilled in the art to combine such features, structures or characteristics into other embodiments.
[0065] In addition, certain words are used in the specification and subsequent claims to refer to specific components or parts. Those with ordinary knowledge in the relevant field should understand that manufacturers can use different nouns or terms to refer to the same component or part. This specification and subsequent claims do not use differences in names as a way to distinguish components or parts, but use differences in the functions of components or parts as the criteria for distinction. "Including" and "including" mentioned throughout the specification and subsequent claims are open-ended terms and should be interpreted as "including but not limited to". In addition, the word "connected" here includes any direct and indirect electrical connection means. Indirect electrical connection means include connection through other devices.
[0066] The following describes in detail the on-chip system startup method provided by the embodiment of the present invention through specific embodiments and application scenarios in conjunction with the accompanying drawings.
[0067] The present invention relates to a method for starting a system on a chip, and in particular to a method for starting a core particle and a module group of a system with a software-defined on-chip system architecture. Existing on-chip systems are in urgent need of studying a technical solution that can minimize hardware occupancy and achieve independent startup. In view of this, the purpose of the present invention is to solve the problem of starting a ROM-free system on a chip. The present invention aims at the problems that the on-chip system has a small available area and high power consumption requirements. A unique startup method for the on-chip system is proposed. A set of available startup methods is provided for the on-chip system, which can effectively start the on-chip system without using too many resources.
[0068] Figure 1 1 is a flow chart of a method for starting a system on a wafer provided in the first embodiment of the present invention, which includes the following steps:
[0069] Step S101, start the edge startup device and control network of the on-chip system.
[0070] Step S102: Search and start at least one available node on the control network as a management node.
[0071] Preferably, this step searches and starts at least one available node as a management node on the control network through a query / response mode.
[0072] Step S103: The management node drives the edge startup device to start at least one computing node.
[0073] Step S104: The management node deploys and starts at least one non-computing node through the control network.
[0074] The present invention is directed to the startup process of the chip in the on-wafer system. For a single module group, the specific startup process includes the following:
[0075] (1) In order for the on-chip system to operate, the control infrastructure must be up and running. The first step in machine startup is to start the on-chip system's edge boot device and control network. The edge boot device includes UEFI (Unified Extensible Firmware Interface). Then, a query-response scheme is used on the control network to search for an available node as a management node and start the management node.
[0076] (2) The operating system of the management node is the Linux operating system (size is about 2MB). At this point, the management node has initially obtained the execution capability of a complete computer. By setting up the internal software network connection, the management node is declared to be the master node. When the kernel of the operating system of the management node is started, it gives up detecting the devices on the bus.
[0077] (3) The boot process of the computing node. First, the management node drives the edge boot device to write the boot program into the memory of the computing node through the I / O control network. An alternative solution is to write the boot program to the management node first, and then the management node writes the boot program to the computing node. The written content includes startup-related instructions and configuration information. The edge boot device can only directly access a small part of the memory of the computing node. A single boot image is used for all computing nodes, and dedicated boot images are used for other non-computing nodes. The boot image of the internal computing node only contains the kernel code of the computing node, which is about 64kB in size.
[0078] (4) After the management node is started, additional file systems can be mounted from an external NFS file server through the NFS (Network File System) client. The usual / etc, / bin, / usr, / proc directories, and user directories (usually / home directories) are mounted from the NFS file server. After the remaining computing nodes are deployed through the management node, they download the driver provided by the NFS file server and then start up.
[0079] (5) The startup of non-computing nodes is achieved by the management node through the control network. After the deployment is completed, the management node accesses the control network and regards the control network as a bus to detect the existence of various processors in the network. The non-computing nodes are started through the driver downloaded from the NFS file server.
[0080] (6) Since the same boot image is used for all computing nodes, additional feature information must be loaded into each computing node for configuration. For I / O nodes, feature information includes its MAC, IP address (for I / O Ethernet network), system-wide unique node identification (ID), the set of computing nodes in its processing set, the route for communicating with these computing nodes, node coordinates, etc. For computing nodes, feature information includes its system-wide unique node identification, node coordinates, the node identification of its corresponding I / O node, and the route for communicating with the I / O node. With the boot image and feature information, I / O nodes and computing nodes can organize themselves into processing sets. Each module group is not started at the same time, but is started in sequence. However, the startup method is different for module groups in different locations. If there is no management node in the system or the module group is too far away from the existing management node (the number of routing path hops reaches 4), the module group will select a new management node. Otherwise, the existing management node is used to start all nodes within the module group, that is, all general-purpose processors in the module group are computing nodes.
[0081] Figure 2 : is a flow chart of a method for starting a system on a chip provided in Embodiment 2 of the present invention, which includes the following steps:
[0082] Step S201, start the edge startup device and control network of the on-chip system.
[0083] Preferably, starting the control network of the on-chip system is the most important part of all tasks. This part adopts a more conventional startup method, and the steps include:
[0084] (1) Perform hardware self-check to check the hardware integrity of the corresponding node.
[0085] (2) Initialize the input buffer.
[0086] (3) Initialize the routing calculation unit, including setting the routing algorithm and parameters.
[0087] (4) VC (Virtual Channel) distributor and SC (Sub Channel) distributor are initialized.
[0088] (5) Initialize the circuit switching structure (Crossbar).
[0089] Step S202: Search and start at least one available node as a management node on the control network through a query / response mode.
[0090] Preferably, this step further comprises:
[0091] (1) The edge startup device broadcasts a query packet to each routing node in the on-chip interconnection network.
[0092] (2) When the routing node obtains the query packet, if the routing node is an available node, it will return a response message to the edge startup device.
[0093] (3) The edge startup device uses the routing node with the fastest response as the management node of the system, and declares the management node as the master node by setting up an internal software network connection, and implements single-point startup for the management node.
[0094] Step S203: The management node obtains the first boot program and writes the first boot program into the management node.
[0095] Preferably, the management node obtaining the boot image further includes:
[0096] (1) The management node obtains the first boot program through the boot image.
[0097] (2) First power on the RAM (Random Access Memory) of the management node.
[0098] (3) After power-on, the first boot program is written into the RAM of the management node to simulate the function of ROM (Read-Only Memory).
[0099] (4) Receive the MD5 (Message-Digest Algorithm 5) check from the outside. After passing the MD5 check, the CPU (Central Processing Unit) of the management node is powered on. At this point, the management node has fully acquired the ability to self-start.
[0100] Preferably, the present invention includes the step of operating system image of external hard disk. For the management node, the entire file system of the management node will be stored in the hard disk. The operating system of the management node is a lightweight Linux operating system of about 2MB in size. It contains the detailed process of starting other nodes. The operating system of the management node makes a lot of modifications to the boot process from the device to adapt to the boot process of the on-chip system.
[0101] Step S204: After the management node is started, an additional file system is mounted from an external NFS file server through the user terminal.
[0102] Step S205: The management node drives the edge startup device to start at least one computing node.
[0103] Step S206: The management node obtains the second boot program, and writes the second boot program into each computing node. Each computing node uses the same second boot program.
[0104] Preferably, after the management node is started, an additional file system can be mounted from an external NFS file server through the NFS terminal. The usual / etc, / bin, / usr, / proc directories, and user directories (usually / home directories) are mounted from the NFS file server. After the remaining computing nodes are deployed through the management node, they download the driver provided in the NFS file server and then start up.
[0105] Preferably, the booting of the computing node is completed through the management node, which drives the edge boot device to write the boot program into the computing node, and then starts the computing node. The kernel of the computing node's operating system is relatively simple, about 16KB, and currently only contains a relatively simple kernel program for receiving instructions from the management node. However, after startup, different programs may be downloaded for specific computing tasks according to specific work requirements.
[0106] Preferably, the step S206 may further include:
[0107] The management node obtains the characteristic information of each computing node and loads the characteristic information to the corresponding computing node for personalized configuration. The computing nodes are organized into module groups based on the characteristic information.
[0108] The characteristic information includes the IP address, MAC address, node identification and / or node coordinates of each computing node. The management node obtains the IP address, MAC address, node identification, node coordinates and other information of each node and sends them to each computing node, and each computing node performs personalized configuration.
[0109] Step S207: the management node downloads the driver program from the NFS file server via the control network. The management node deploys and starts at least one non-computing node according to the driver program.
[0110] Step S208: The management node obtains the third boot program and writes the third boot program into the non-computing nodes. Each non-computing node uses a dedicated third boot program.
[0111] Preferably, the management node starts each non-computing node by downloading a corresponding driver program to achieve real-time update.
[0112] Preferably, the method for starting different module groups of the present invention specifically includes:
[0113] (1) Each module group is started in sequence according to the module group identification, including:
[0114] (1) Each module group determines whether the distance between itself and the original management node exceeds a predetermined distance threshold. For example, if the number of routing path hops reaches 4, it is considered that the distance between the module group and the original management node exceeds the distance threshold. For example, if the number of routing path hops does not reach 4, it is considered that the distance between the module group and the original management node does not exceed the distance threshold.
[0115] (2) If the distance threshold is exceeded, an available node is searched and started as a new management node through the inquiry / response mode.
[0116] (3) If the distance threshold is not exceeded, all nodes in the module group are started through the original management node.
[0117] For example, each module group is started in sequence according to the module group identifier. After the routing of each module is powered on and initialized, all existing management nodes broadcast a query message with a maximum hop count of 4. If a node of the module group responds, all nodes in the module group will be used as computing nodes for the management node that receives the response to assist in startup. At this time, information is exchanged between the management nodes. If multiple management nodes respond, the management node in the module group with the largest identifier will be selected for assistance.
[0118] It should be noted that the startup method of the on-chip system provided in the embodiment of the present invention can be executed by an electronic device, a device, or a control module in the device for executing the method. In the embodiment of the present invention, the startup device of the on-chip system provided in the embodiment of the present invention is described by taking the execution of the method by a device as an example.
[0119] Figure 3 1 is a schematic diagram of the structure of the startup device of the on-chip system provided in the first embodiment of the present invention. The startup device 100 of the on-chip system includes a device startup module 10, a management node startup module 20, a computing node startup module 30 and a non-computing node startup module 40, wherein:
[0120] The device startup module 10 is used to start the edge startup device and control network of the on-wafer system.
[0121] The management node startup module 20 is used to search for and start at least one available node on the control network as a management node.
[0122] The computing node startup module 30 is used to manage a node to drive an edge startup device to start at least one computing node.
[0123] The non-computing node startup module 40 manages the node to deploy and start at least one non-computing node through the control network.
[0124] Figure 4 1 is a schematic diagram of the structure of the startup device of the on-chip system provided in the second embodiment of the present invention, wherein the startup device 100 of the on-chip system includes a device startup module 10, a management node startup module 20, a computing node startup module 30 and a non-computing node startup module 40, wherein:
[0125] The device startup module 10 is used to start the edge startup device and control network of the on-chip system. Preferably, the device startup module 10 starts the control network of the on-chip system including: (1) performing a hardware self-check to check the hardware integrity of the corresponding node. (2) initializing the input buffer. (3) initializing the routing calculation unit, including setting the routing algorithm and parameters. (4) initializing the virtual channel distributor and the sub-channel distributor. (5) initializing the circuit switching structure.
[0126] The management node startup module 20 is used to search and start at least one available node on the control network as a management node. Preferably, the management node startup module 20 further includes a first startup submodule 21, a first boot submodule 22 and a mounting submodule 23, wherein:
[0127] The first startup submodule 21 is used to search and start at least one available node as a management node on the control network through an inquiry / response mode. Preferably, the edge startup device broadcasts a query packet to each routing node in the on-chip interconnection network. When the routing node obtains the query packet, if the routing node is an available node, it returns a response message to the edge startup device. The edge startup device uses the routing node that responds fastest as the management node of the system, and declares the management node as the master node by setting up an internal software network connection.
[0128] The first boot submodule 22 is used for the management node to obtain the first boot program and write the first boot program into the management node. Preferably, the management node obtains the first boot program; powers on the random access memory of the management node; writes the first boot program into the random access memory of the management node; receives an information digest algorithm check from the outside, and powers on the central processor of the management node after passing the check.
[0129] The mounting submodule 23 is used to mount an additional file system from an external NFS file server through a user terminal after the management node is started.
[0130] The management node startup module 20 further includes:
[0131] The personalized configuration submodule 24 is used for obtaining characteristic information of each computing node after the management node drives the edge startup device to start the computing node, and loading the characteristic information into the corresponding computing node for personalized configuration. The computing nodes are organized into module groups according to the characteristic information.
[0132] The characteristic information includes the IP address, MAC address, node identification and / or node coordinates of each computing node.
[0133] The computing node startup module 30 is used to manage the node to drive the edge startup device to start at least one computing node. Preferably, the computing node startup module 30 further includes a second startup submodule 31 and a second boot submodule 32, wherein:
[0134] The second startup submodule 31 is used for managing a node to drive an edge startup device to start at least one computing node.
[0135] The second boot submodule 32 is used for the management node to obtain the second boot program and write the second boot program into each computing node. Each computing node uses the same second boot program.
[0136] The non-computing node startup module 40 manages the node to deploy and start at least one non-computing node through the control network. The non-computing node startup module 40 further includes
[0137] The third start-up submodule 41 is used for the management node to download the driver program from the NFS file server through the control network, and the management node deploys and starts at least one non-computing node according to the driver program.
[0138] The third boot submodule 42 is used for the management node to obtain the third boot program and write the third boot program into the non-computing node. Each non-computing node uses a dedicated third boot program.
[0139] Each module group is started in sequence according to the module group identifier, including:
[0140] Each module group determines whether the distance between itself and the original management node exceeds a predetermined distance threshold.
[0141] If the distance threshold is exceeded, an available node is searched and started as a new management node through the inquiry / response mode.
[0142] If the distance threshold is not exceeded, all nodes in the module group are started through the original management node.
[0143] The on-chip system startup device provided by the embodiment of the present invention can realize Figures 1-2 To avoid repetition, the various processes implemented in the embodiment of the startup method of the on-chip system are not described again here.
[0144] The startup device of the on-chip system provided by the embodiment of the present invention includes: a device startup module, which is used to start the edge startup device and control network of the on-chip system. A management node startup module, which is used to search and start at least one available node on the control network as a management node. A computing node startup module, which is used for the management node to drive the edge startup device to start at least one computing node. A non-computing node startup module, in which the management node deploys and starts at least one non-computing node through the control network. By this, the present invention solves the problem of ROM-free system startup of the existing on-chip system in view of the characteristics of the on-chip system having a small available area and high power consumption requirements, and can both minimize hardware occupancy and realize independent startup of the on-chip system.
[0145] The present invention also provides a storage medium for storing Figure 1-2 A computer program for the startup method of any of the above-mentioned systems on the crystal. For example, a computer program instruction, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer, and can achieve the same technical effect. To avoid repetition, it will not be repeated here. The program instructions for calling the method of the present invention may be stored in a fixed or removable storage medium, and / or transmitted through a data stream in a broadcast or other signal-bearing medium and / or stored in a storage medium of a computer device running according to the program instructions.
[0146] According to one embodiment of the present invention, the present invention also provides a Figure 5 The electronic device 400 shown, the electronic device 400 optionally includes a storage medium 200 for storing a computer program and a processor 300 for executing a computer program, wherein when the computer program is executed by the processor 300, any of the above-mentioned methods for starting the system on the crystal is implemented, triggering the electronic device 400 to execute the method and / or technical solution based on the aforementioned multiple embodiments, and can achieve the same technical effect, to avoid repetition, it is not repeated here. It should be noted that the electronic device in the embodiment of the present invention includes a mobile electronic device and a non-mobile electronic device. Exemplarily, the mobile electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, an in-vehicle electronic device, a wearable device, a super mobile personal computer, a netbook or a personal digital assistant, etc., and the non-mobile electronic device can be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (personal computer, PC), a television (television, TV), a teller machine or a self-service machine, etc., which is not specifically limited in the embodiment of the present invention.
[0147] It should be noted that the present invention can be implemented in software and / or a combination of software and hardware, for example, can be implemented using an application specific integrated circuit (ASIC), a general purpose computer or any other similar hardware device. In one embodiment, the software program of the present invention can be executed by a processor to implement the above steps or functions. Similarly, the software program of the present invention (including related data structures) can be stored in a computer-readable recording medium, for example, a RAM memory, a magnetic or optical drive or a floppy disk and the like. In addition, some steps or functions of the present invention can be implemented using hardware, for example, as a circuit that cooperates with a processor to perform each step or function.
[0148] The present invention can be implemented on a computer as a computer-implemented method, or implemented in dedicated hardware, or implemented in a combination of the two. The executable code or part thereof for the method according to the present invention can be stored on a computer program product. Examples of computer program products include memory devices, optical storage devices, integrated circuits, servers, online software, etc. Optionally, the computer program product includes a non-temporary program code component stored on a computer-readable medium so as to perform the method according to the present invention when the program product is executed on a computer.
[0149] In an alternative embodiment, the computer program comprises computer program code means adapted to perform all the steps of the method according to the invention when the computer program is run on a computer. Optionally, the computer program is embodied on a computer readable medium.
[0150] It should be noted that, in this article, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the method and device in the embodiment of the present invention is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0151] Of course, the present invention may have many other embodiments. Without departing from the spirit and essence of the present invention, those skilled in the art may make various corresponding changes and modifications based on the present invention, but these corresponding changes and modifications should all fall within the scope of protection of the claims attached to the present invention.
Claims
1. A method for starting a system on a wafer, characterized in that: The following steps are involved: Start the edge startup device and control network of the Jingshang system; Searching for and starting at least one available node on the control network as a management node; The management node drives the edge startup device to start at least one computing node; The management node deploys and starts at least one non-computing node through the control network.
2. The method for starting a system on a wafer according to claim 1, characterized in that: The step of searching and starting at least one available node on the control network as a management node comprises: Searching and starting at least one available node on the control network as the management node through a query / response mode; The management node obtains a first boot program, and writes the first boot program into the management node; After the management node is started, an additional file system is mounted from an external NFS file server through a user terminal; The step of the management node driving the edge startup device to start at least one computing node includes: The management node drives the edge startup device to start at least one of the computing nodes; The management node obtains a second boot program, and writes the second boot program into each of the computing nodes, so that each of the computing nodes uses the same second boot program; The step of deploying and starting at least one non-computing node by the management node through the control network includes: The management node downloads the driver from the NFS file server through the control network; The management node deploys and starts at least one of the non-computing nodes according to the driver program; The management node obtains the third boot program and writes the third boot program into the non-computing nodes, and each of the non-computing nodes uses a dedicated third boot program.
3. The method for starting a system on a chip according to claim 2, characterized in that: The step of obtaining, by the management node, a first boot program and writing the first boot program into the management node comprises: The management node obtains the first boot program; Powering on the random access memory of the management node; Writing the first boot program into the random access memory of the management node; Receive the information summary algorithm verification from the outside, and after passing the verification, power on the central processor of the management node.
4. The method for starting a system on a chip according to claim 2, characterized in that: The step of searching and starting at least one available node as the management node on the control network in a query / response mode comprises: The edge startup device broadcasts a query packet to each routing node in the on-chip interconnection network; When the routing node obtains the query packet, if the routing node is an available node, it returns a response message to the edge startup device; The edge startup device uses the routing node that responds fastest as the management node of the system, and declares the management node as the master node by setting up an internal software network connection.
5. The method for starting a system on a chip according to claim 2, characterized in that: The step of starting the control network of the on-chip system includes: Perform hardware self-test to check the hardware integrity of the corresponding node; Initialize input buffer; Initialize the routing calculation unit, including setting routing algorithms and parameters; Initialize virtual channel allocator and subchannel allocator; Initialize the circuit switched fabric.
6. The method for starting a wafer system according to claim 2, characterized in that: The step of the management node driving the edge startup device to start the computing node also includes: The management node obtains characteristic information of each computing node, and loads the characteristic information to the corresponding computing node for personalized configuration, and the computing nodes are organized into module groups according to the characteristic information; The characteristic information includes the IP address, MAC address, node identification and / or node coordinates of each computing node.
7. The method for starting a wafer system according to claim 6, characterized in that: After the management node deploys and starts the non-computing node through the control network, the following steps are included: Each of the module groups is started in sequence according to the module group identifier; Each module group determines whether the distance between itself and the original management node exceeds a predetermined distance threshold; If the distance threshold is exceeded, searching and starting an available node as a new management node through the inquiry / response mode; If the distance does not exceed the threshold, all nodes in the module group are started through the original management node.
8. A starting device for an on-wafer system constructed based on the method according to any one of claims 1 to 7, characterized in that: The device comprises: The device startup module is used to start the edge startup device and control network of the on-chip system; A management node startup module, used to search for and start at least one available node on the control network as a management node; A computing node startup module, used for the management node to drive the edge startup device to start at least one computing node; A non-computing node startup module, wherein the management node deploys and starts at least one non-computing node through the control network.
9. A storage medium, characterized in that: A computer program for storing a computer program for executing a method for starting an on-wafer system according to any one of claims 1 to 7.
10. An electronic device comprising a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, characterized in that: When the processor executes the computer program, the on-wafer system startup method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Patching boot code of read-only memory
CN104981778A
Deployment method, device and system, electronic equipment and readable storage medium
CN113282342A
Internet of Things system management method
CN114500554A
System program starting method and device, computing equipment and storage medium
CN117931296A
Edge exposure device and method
US20200089119A1