Task processing system based on main controller and auxiliary controller

By introducing the main controller and the auxiliary controller in the task processing device, decoupling the service flow and the monitoring flow, the problem that the processor in the prior art needs to perform calculations and monitoring simultaneously is solved, and stability and maintainability are improved. Reduced power consumption.

CN118377535BActive Publication Date: 2024-12-24TSINGHUA UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410503691.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-25
Publication Date
2024-12-24
Estimated Expiration
2044-04-25

AI Technical Summary

Technical Problem

In existing task processing devices, the processor needs to perform calculation tasks and monitor the operating status simultaneously, resulting in poor stability and maintainability of service flow and monitoring flow.

Method used

Adopting an architecture based on the main controller and the auxiliary controller, the main controller is responsible for processing task data, the auxiliary controller is responsible for monitoring the operating status and adjusting abnormalities, and the management of monitoring flow and service flow through the decoupling function module is realized to improve stability and energy saving. sex.

Benefits of technology

The stable operation and low power consumption of the task processing device are achieved, reducing the possibility of failures and improving the maintenance of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118377535B_ABST
    Figure CN118377535B_ABST
Patent Text Reader

Abstract

This specification relates to the field of computer technology, and in particular to a task processing system and device based on a main controller and an auxiliary controller. The task processing system based on the main controller and the auxiliary controller includes a data center device and N task processing devices, each of which includes a main controller, an auxiliary controller and a processor, and N is a positive integer greater than or equal to 1; the data center device is used to allocate task data to the N task processing devices and obtain the processing results of the task data; in each of the task processing devices, the main controller is used to control the processor to process the task data allocated to the task processing device and obtain the processing results of the task data, and the auxiliary controller is used to monitor the operating status of the task processing device, obtain monitoring data, and adjust the operating status of the task processing device according to the monitoring data. The embodiments of this specification can realize the management of monitoring flows and business flows and improve the stability of operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of computer technology, and in particular to a task processing system and device based on a main controller and an auxiliary controller. Background Art

[0002] Task processing devices can be used to perform various computing tasks, such as image recognition and speech recognition. During the execution of these computing tasks, it is necessary to collect and analyze various indicators and status data of the task processing devices to monitor their operating status. This operating status affects the performance of the entire task processing device.

[0003] In the prior art, a processor is provided within the task processing device. This processor is used to execute various computing tasks and also monitor the operating status of the task processing device. This processor must simultaneously execute computing tasks and monitor the operating status. The coupled business and monitoring flows impair the stability and maintainability of the task processing device. Summary of the Invention

[0004] The embodiments of this specification provide a task processing system and device based on a main controller and an auxiliary controller, which are used to improve stability and maintainability.

[0005] The embodiment of this specification provides a task processing system based on a main controller and an auxiliary controller, including a data center device and N task processing devices, each of which includes a main controller, an auxiliary controller and a processor, where N is a positive integer greater than or equal to 1;

[0006] The data center device is used to distribute task data to the N task processing devices and obtain processing results of the task data;

[0007] In each of the task processing devices, the main controller is used to control the processor to process the task data assigned to the task processing device to obtain the processing results of the task data; the auxiliary controller is used to monitor the operating status of the task processing device, obtain monitoring data, and adjust the operating status of the task processing device according to the monitoring data.

[0008] The embodiment of this specification provides a task processing device based on a main controller and an auxiliary controller, including a main controller, an auxiliary controller and a processor;

[0009] The main controller is used to control the processor to process the task data assigned to the task processing device;

[0010] The auxiliary controller is used to monitor the operating status of the task processing device and obtain monitoring data; determine the abnormality level of the task processing device based on the monitoring data, and send an abnormality message to the main controller when the abnormality level meets the set conditions;

[0011] The main controller is used to perform corresponding operations on the processing of task data according to the abnormal message.

[0012] According to the technical solution of the embodiment of this specification, the task processing device may include a main controller, an auxiliary controller and a processor. The main controller can be used to control the processor to process the task data assigned to the task processing device and obtain the processing result of the task data. The auxiliary controller can be used to monitor the operating status of the task processing device, obtain monitoring data, and adjust the operating status of the task processing device according to the monitoring data. In this way, by dividing the business functions of the functional modules in the task processing device, the functional modules are decoupled from each other and the functions complement each other. The functional modules cooperate with each other and work together to better execute the computing tasks assigned to the task processing device, thereby realizing the management of monitoring flows and business flows and improving the stability of the task processing device. It also reduces the power consumption of the task processing device, making it more energy-saving and environmentally friendly.

[0013] In addition, according to the technical solutions of the embodiments of this specification, a task processing system may include a data center device and N task processing devices. Each task processing device may include a main controller, a secondary controller, and a processor, where N is a positive integer greater than or equal to 1. The data center device may assign task data to the N task processing devices and obtain processing results of the task data. In this way, the data center device may schedule computing tasks for the N task processing devices.

[0014] Furthermore, in the technical solutions of the embodiments of this specification, the auxiliary controller can monitor the operating status of the task processing device and obtain monitoring data. Based on the monitoring data, it can determine the abnormality level of the task processing device and, when the abnormality level meets the set conditions, send an abnormality message to the main controller. The main controller can perform corresponding operations on the task data processing process based on the abnormality message. This interaction between the auxiliary controller and the main controller ensures the stable operation of the task processing device. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the embodiments of this specification or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. The drawings described below are only some embodiments recorded in this specification. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0016] Figure 1 This is a functional structure diagram of a task processing device in an embodiment of this specification;

[0017] Figure 2 This is a functional structure diagram of a task processing device in an embodiment of this specification;

[0018] Figure 3 Schematic diagram of the interaction between the main controller and the processor in the embodiment of this specification;

[0019] Figure 4 This is a schematic diagram of the interaction process of abnormal information in the embodiments of this specification;

[0020] Figure 5 This is a functional structure diagram of the task processing system in the embodiment of this specification;

[0021] Figure 6 This is a functional structure diagram of the DIP switch in the embodiment of this specification. DETAILED DESCRIPTION

[0022] The technical solutions in the embodiments of this specification will be clearly and completely described below in conjunction with the drawings in the embodiments of this specification. Obviously, the described embodiments are only a part of the embodiments of this specification, rather than all of the embodiments. The specific embodiments described here are only used to explain the present disclosure, rather than to limit the present disclosure. Based on the described embodiments of the present disclosure, all other embodiments obtained by those of ordinary skill in the art fall within the scope of protection of the present disclosure. In addition, relational terms such as "first" and "second" are merely used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations.

[0023] Please also refer to Figure 1 、 Figure 2 、 Figure 3 and Figure 4 The embodiments of this specification provide a task processing device.

[0024] The task processing device is used to perform various computing tasks, such as image recognition tasks, speech recognition tasks, etc. The task processing device may include multiple of a main controller, a secondary controller, and a processor. For example, the task processing device may be a motherboard, on which multiple of the main controller, the secondary controller, and the processor may be disposed. Of course, the task processing device may also be configured in other implementation forms, such as a computer, specifically, a single-board computer.

[0025] In some embodiments, the main controller may be an FPGA (Field Programmable Gate Array), a CPLD (Complex Programmable Logic Device), or the like. The auxiliary controller may be a CPLD (Complex Programmable Logic Device), a single-chip microcomputer, or the like. The main controller may have higher computing power than the auxiliary controller. The processor may include a single-core processor, a multi-core processor, a many-core processor, a chip array, a many-core chip array, or the like. The processor may run algorithms such as convolutional neural networks (CNNs), spiking neural networks (SNNs), and artificial neural networks (ANNs) to perform various computing tasks, such as image recognition tasks and speech recognition tasks. In some scenario examples, the processor may be a brain-inspired processor.

[0026] In some embodiments, the main controller and the processor can be used to collaboratively process computing tasks. The main controller can be used to control the processor to process the task data assigned to the task processing device to obtain the processing results of the task data. The auxiliary controller is used to maintain the stable operation of the task processing device. Specifically, the auxiliary controller is used to monitor the operating status of the task processing device and obtain monitoring data. In this way, by dividing the business functions of the functional modules in the task processing device, the functional modules are decoupled from each other and their functions complement each other. The functional modules cooperate with each other and work together to jointly execute the computing tasks assigned to the task processing device, thereby realizing the management of monitoring flows and business flows and improving the stability of the task processing device. It also reduces the power consumption of the task processing device, making it more energy-saving and environmentally friendly.

[0027] In some embodiments, the task processing device may further include a monitoring unit. The auxiliary controller may control the monitoring unit to monitor the operating status of the task processing device and obtain monitoring data. Specifically, the monitoring unit may send monitoring data to the auxiliary controller. The auxiliary controller may receive the monitoring data sent by the monitoring unit. For example, the monitoring unit may include a voltage sensor, which may be used to detect the voltage of the task processing device, such as the voltage of the main controller and / or processor. The auxiliary controller may obtain the voltage data detected by the power supply sensor. For another example, the monitoring unit may further include a temperature sensor, which may be used to detect the temperature of the task processing device, such as the temperature of the main controller and / or processor. The auxiliary controller may obtain the temperature data detected by the temperature sensor.

[0028] In some embodiments, the auxiliary controller may adjust the operating state of the task processing device according to the monitoring data.

[0029] The auxiliary controller can analyze the monitoring data to determine whether it is abnormal. If the monitoring data is abnormal, it indicates that the operating status of the task processing device is abnormal. Based on the type of monitoring data, the auxiliary controller can select a module to be adjusted in the task processing device. The auxiliary controller can send instructions to the module to be adjusted, causing it to execute the instructions, thereby restoring the normal operating status of the task processing device. The modules to be adjusted can be located on the task processing device and include, but are not limited to, power modules and heat dissipation modules. The power module is used to supply power to the task processing device. The heat dissipation module is used to dissipate heat from the task processing device. The heat dissipation module includes, for example, a fan. The type of monitoring data corresponds to the type of module to be adjusted. For example, voltage data corresponds to a power module, and temperature data corresponds to a heat dissipation module. Based on this correspondence, the auxiliary controller can select a module to be adjusted in the task processing device. The auxiliary controller can determine whether the monitoring data is within a normal value range. If so, the auxiliary controller can determine that the monitoring data is normal; if not, the auxiliary controller can determine that the monitoring data is abnormal. Furthermore, the auxiliary controller can identify the type of abnormal data, generate corresponding instructions based on the type of abnormal data, and send the instructions to the module to be adjusted, causing it to execute the instructions. For example, if the monitoring data is greater than the upper limit of the normal value range, the auxiliary controller can generate a first instruction and send the first instruction to the module to be adjusted, so that the module to be adjusted executes the first instruction, thereby reducing the monitoring data to within the normal range. If the monitoring data is less than the lower limit of the normal value range, the auxiliary controller can generate a second instruction and send the second instruction to the module to be adjusted, so that the module to be adjusted executes the second instruction, thereby increasing the monitoring data to within the normal range.

[0030] For example, the monitoring data may include voltage data, which may include voltage data of the main controller and / or processor. The auxiliary controller may analyze the voltage data to determine whether the voltage data is within a normal value range; if not, it may send a power-off instruction to the power module to power off the power module, thereby implementing power-off protection processing for the task processing device.

[0031] For another example, the monitoring data may include temperature data, and the temperature data may include temperature data of the main controller and / or processor. The auxiliary controller may analyze the temperature data to determine whether the temperature data is within a set numerical range. If the temperature data is greater than the upper limit of the set numerical range, the auxiliary controller may generate a first instruction and send the first instruction to the heat dissipation module. The first instruction is used to instruct to increase the heat dissipation capacity. The heat dissipation module may receive the first instruction and execute the first instruction, for example, it may increase the fan speed to improve the heat dissipation capacity. If the temperature data is less than the lower limit of the set numerical range, the auxiliary controller may generate a second instruction and send the second instruction to the heat dissipation module. The second instruction is used to instruct to reduce the heat dissipation capacity to reduce power consumption. The heat dissipation module may receive the second instruction and execute the second instruction, for example, it may reduce the fan speed to reduce power consumption.

[0032] Furthermore, if the monitoring data is abnormal, the auxiliary controller can also identify the abnormality level of the monitoring data and determine whether the identified abnormality level meets set conditions. If so, it indicates a high degree of abnormality, and the auxiliary controller can send an abnormality message to the main controller. Based on the abnormality message, the main controller can perform corresponding operations on the task data processing process, such as archiving important information during the processing to ensure that it is not lost. The auxiliary controller can compare the detected monitoring data with reference monitoring data to determine the degree of difference between the detected monitoring data and the reference monitoring data, and determine the abnormality level of the monitoring data based on the degree of difference. For example, the auxiliary controller can subtract the detected monitoring data from the reference monitoring data and use the resulting difference as the degree of difference. Based on the degree of difference, the auxiliary controller can match the abnormality level of the monitoring data within a set of abnormality levels to determine the abnormality level of the monitoring data. The set of abnormality levels can include one or more abnormality levels, each of which can correspond to an abnormality interval. If the degree of difference falls within the abnormality interval of a certain abnormality level, it indicates that the degree of difference matches the abnormality level. The set conditions can include: the abnormality level of the monitoring data is greater than a set level.

[0033] For example, the monitoring data may include voltage data, which may include voltage data from the main controller and / or processor. The auxiliary controller may analyze the voltage data to determine whether it is within a normal value range; if not, it may further determine the abnormality level of the voltage data. If the abnormality level of the voltage data meets the set conditions, indicating a high degree of voltage abnormality, the auxiliary controller may send an abnormality message to the main controller. The main controller may archive important information during the processing based on the abnormality message to ensure that important information is not lost.

[0034] For another example, the monitoring data may include temperature data, which may include temperature data from the main controller and / or processor. The auxiliary controller may analyze the temperature data to determine whether the temperature data is within a normal value range; if not, it may further determine the abnormality level of the temperature data. If the abnormality level of the temperature data meets a set condition, indicating a high degree of temperature abnormality, the auxiliary controller may send an abnormality message to the main controller. The main controller may archive important information from the abnormality message.

[0035] In some embodiments, the task processing device may further include a display module. The auxiliary controller may control the display module to display the operating status of the task processing device. Specifically, the display module may include a display screen, an indicator light, etc. The display screen may include a liquid crystal display (LCD) or an organic light-emitting diode (OLED). The auxiliary controller may control the display screen to display text information describing the operating status of the task processing device. The indicator light may include a light-emitting diode (LED). The auxiliary controller may control one or more of the following: brightness, blinking, or color of the indicator light. Changes in brightness, blinking, or color indicate the operating status of the task processing device. Specifically, the auxiliary controller may analyze monitoring data to determine whether the monitoring data is abnormal. If the monitoring data is abnormal, the auxiliary controller may control the display module to display a first message indicating that the operating status of the task processing device is abnormal. For example, the display module may be a display screen, and the auxiliary controller may control the display screen to display a first text message indicating that the operating status of the task processing device is abnormal. Specifically, the first text message may include "Temperature Abnormal" or "Voltage Abnormal." For another example, the display module may be an indicator light, and the auxiliary controller may control the indicator light to emit a first color of light, and the first color of light is used to indicate that the operating status of the task processing device is abnormal. Specifically, for example, the first color of light may be red light. If the monitoring data is normal, the auxiliary controller may control the display module to display a second information, and the second information is used to indicate that the operating status of the task processing device is normal. For example, the display module may be a display screen, and the auxiliary controller may control the display screen to display a second text message, and the second text message is used to indicate that the operating status of the task processing device is normal. Specifically, for example, the second text message may include "operating normally" and the like. For another example, the display module may be an indicator light, and the auxiliary controller may control the indicator light to emit a second color of light, and the second color of light is used to indicate that the operating status of the task processing device is normal. Specifically, for example, the second color of light may be green light or blue light.

[0036] For example, the auxiliary controller can analyze the monitoring data to determine whether the monitoring data is abnormal; if the monitoring data is abnormal, the module to be adjusted can be selected in the task processing device according to the type of monitoring data; an instruction can be sent to the module to be adjusted so that the module to be adjusted executes the instruction, thereby restoring the operating state of the task processing device to normal. Optionally, if the monitoring data is abnormal, the auxiliary controller can also identify the abnormality level of the monitoring data; it can determine whether the identified abnormality level meets the set conditions. If so, it indicates that the degree of abnormality is high, and the auxiliary controller can also send an abnormality message to the main controller. The main controller can perform corresponding operations on the processing of the task data based on the abnormality message. Optionally, if the monitoring data is abnormal, the auxiliary controller can control the display module to display a first message, and the first message is used to indicate that the operating state of the task processing device is abnormal. Optionally, if the monitoring data is normal, the auxiliary controller can control the display module to display a second message, and the second message is used to indicate that the operating state of the task processing device is normal.

[0037] In some embodiments, the auxiliary controller may further store attribute information of the task processing device. The attribute information may be used to identify the task processing device, including but not limited to identification information, name, configuration information, etc. of the task processing device.

[0038] In some embodiments, the task processing device may further include a physical switch or command control. The physical switch has a higher priority than the command control. The physical switch is used to control the information exchange between the auxiliary controller and the main controller. The physical switch may include a dial switch, a key switch, etc. Figure 6 . The user can operate the dip switch to put the dip switch in the first position. When the dip switch is in the first position, the auxiliary controller can send a pause message to the main controller. The main controller can receive the pause message and can pause the processing of task data. For another example, the user can also operate the dip switch to put the dip switch in the second position. When the dip switch is in the second position, the auxiliary controller can send a start message to the main controller. The main controller can receive the start message and can start the processing of task data. For example, the main controller can control the processor to process the task data assigned to the task processing device to obtain a processing result.

[0039] In some embodiments, the task processing device may further include a peripheral interface. The peripheral interface includes but is not limited to a USB interface, an HDMI interface, a VGA interface, a PCIe interface, etc. The auxiliary controller may be used to control the activation and deactivation of the peripheral interface. For example, the task processing device may include a physical switch. The physical switch is used by the auxiliary controller to control the activation and deactivation of the peripheral interface. The physical switch may include a dip switch, a key switch, etc. For example, see Figure 6 The user can operate the dip switch to place it in the third position. When the dip switch is in the third position, the auxiliary controller can disable the peripheral interface. For another example, the user can operate the dip switch to place it in the fourth position. When the dip switch is in the fourth position, the auxiliary controller can enable the peripheral interface.

[0040] In some embodiments, the auxiliary controller can modify its internal connections through logic development to achieve free control functions. The auxiliary controller can also achieve system node information interaction through logic development.

[0041] In some embodiments, the secondary controller may adjust the clock frequency of the primary controller according to business requirements.

[0042] Specifically, the main controller may require different clock frequencies when running different computing tasks. To this end, the main controller can obtain the task data assigned to the task processing device; can determine the matching clock frequency based on the task data; can determine whether the determined clock frequency is the same as the current clock frequency of the main controller; when the determined clock frequency is different from the current clock frequency of the main controller, can send instruction information to the auxiliary controller. The auxiliary controller can adjust the clock frequency of the main controller to a clock frequency that matches the task data based on the instruction information. When the main controller runs one of the computing tasks, the number of clocks required is different from the previously set number, and the corresponding instruction information can be sent to the auxiliary controller. After receiving this instruction information, the auxiliary controller adjusts the clock frequency to a clock frequency that matches the working requirements of the main controller. After the adjustment, the main controller can execute this computing task. In this way, the auxiliary controller and the main controller can communicate to achieve stable and efficient operation of the task processing device.

[0043] The main controller can determine the corresponding clock frequency based on the task requirements of the task data. The task requirements may include the amount of calculation, the amount of data, etc. For example, the main controller can provide a mapping relationship between the task requirements and the clock frequency. The main controller can determine the clock frequency that matches the task data based on the mapping relationship. The instruction information can include the clock frequency that matches the task data. The current clock frequency of the main controller can be a preset default clock frequency, or it can also be a clock frequency determined based on historical task data assigned to the task processing device.

[0044] In some embodiments, the main controller can pre-process task data assigned to the task processing device and send the pre-processing results to the processor. The processor can process the pre-processing results to obtain a processing result of the task data, and can send the processing result of the task data to the main controller. The main controller can receive the processing result. In this way, the main controller and the processor can achieve collaborative processing of computing tasks through interactive communication.

[0045] For example, the main controller can identify, classify and package the task data assigned to the task processing device; and can send the packaged task data to the processor. The processor can process the packaged task data to obtain the processing result of the task data, and can send the processing result of the task data to the main controller. The main controller can receive the processing result. Specifically, for example, the task data may include image data, and the computing task may include an image recognition task. The main controller can pre-process the image data assigned to the task processing device, such as scaling, cropping, translating, rotating, grayscale, etc. The main controller can send the pre-processed image data to the processor. The processor can identify the pre-processed image data to obtain a recognition result, and can send the recognition result to the main controller. The main controller can receive the recognition result. The recognition result may include objects contained in the image.

[0046] For example, the main controller may implement the pre-processing through a service unit. The service unit may be software including one or more software modules.

[0047] In some embodiments, the main controller can also decompose the task data assigned to the task processing device to obtain multiple subtask data; one or more subtask data with a computational amount less than or equal to a set threshold can be selected from the multiple subtask data as the first subtask data; one or more subtask data with a computational amount greater than a set threshold can be selected from the multiple subtask data as the second subtask data; the first subtask data can be processed to obtain a first sub-processing result; and the second subtask data can be sent to the processor. The processor can receive the second subtask data; the second subtask data can be processed to obtain a second sub-processing result; and the second sub-processing result can be sent to the main controller. The main controller can determine the processing result of the task data based on the second sub-processing result and the first sub-processing result. In this way, the main controller and the processor can realize the collaborative processing of computing tasks through interactive communication. In addition, during the collaborative processing process, the main controller can also act as a processor to process part of the subtask data.

[0048] By decomposing task data, large, complex, or highly comprehensive tasks can be broken down into multiple smaller, more manageable, and more manageable subtasks. The method of task decomposition and the resulting subtask data may vary depending on the specific application scenario. For example, semantic understanding of text data can be broken down into multiple subtasks, such as syntactic analysis, entity extraction, and sentiment analysis. Each subtask corresponds to subtask data, which may include the text data or one or more paragraphs within the text data. The main controller may determine the computational load of each subtask data. For example, each task data item in the multiple subtask data items may correspond to a task type. There may be a corresponding relationship between the task type and the computational load. The main controller may determine the computational load of the subtask data item based on the task type. Of course, the main controller may also use other methods to determine the computational load of each subtask data item. This embodiment of the present specification does not specifically limit this. Thus, the main controller may select one or more subtask data items from the multiple subtask data items whose computational load is less than or equal to a set threshold as the first subtask data item; and may select one or more subtask data items from the multiple subtask data items whose computational load is greater than the set threshold item as the second subtask data item. The main controller can process the first sub-task data with a smaller computational load to obtain a first sub-processing result; and can control the processor to process the second sub-task data with a larger computational load to obtain a second sub-processing result. The main controller can aggregate the first sub-processing result and the second sub-processing result to obtain a final processing result. Specific to different application scenarios, the aggregation method of the first sub-processing result and the second sub-processing result can be different. For example, the aggregation method of the first sub-processing result and the second sub-processing result includes addition, subtraction, etc.

[0049] In some embodiments, data can be directly exchanged between the main controller and the auxiliary controller. For example, the auxiliary controller can directly send abnormal messages, pause messages, start messages, etc. to the main controller. For another example, the main controller can directly send instruction information, etc. to the auxiliary controller. Alternatively, the task processing device may further include a microcontroller module. The main controller and the auxiliary controller may also exchange data through the microcontroller module. For example, the auxiliary controller can send abnormal messages, pause messages, start messages, etc. to the microcontroller module, and the microcontroller module can send abnormal messages, pause messages, start messages, etc. to the main controller. For another example, the main controller can send instruction information, etc. to the microcontroller module, and the microcontroller can send instruction information, etc. to the auxiliary controller. The microcontroller module includes a communication module for sending and receiving data, and of course may also include other modules.

[0050] In some embodiments, the task processing device may further include a peripheral interface. The peripheral interface includes but is not limited to a USB interface, an HDMI interface, a VGA interface, a PCIe interface, and the like. The auxiliary controller may be used to control the activation and deactivation of the peripheral interface. The main controller may receive input data through the peripheral interface; may control the processor to process the received input data to obtain output data; and may output data through the peripheral structure. The input data and the output data may be video data, image data, audio data, text data, and the like, respectively. In this way, through the main controller, the task processing device may realize information interaction with external devices, thereby having the characteristic of flexible reception and processing of data types.

[0051] The task processing device of the embodiment of this specification includes a main controller, an auxiliary controller and a processor. The main controller can be used to control the processor to process the task data assigned to the task processing device to obtain the processing result of the task data. The auxiliary controller can be used to monitor the operating status of the task processing device, obtain monitoring data, and adjust the operating status of the task processing device according to the monitoring data. In this way, by dividing the business functions of the functional modules in the task processing device, the functional modules are decoupled from each other and the functions complement each other. The functional modules cooperate with each other and work together to better execute the computing tasks assigned to the task processing device, thereby realizing the management of monitoring flows and business flows and improving the stability of the task processing device. It also reduces the power consumption of the task processing device, making it more energy-saving and environmentally friendly.

[0052] The embodiments of this specification divide the task processing device into a primary controller, a secondary controller, and a processor. These controllers each have distinct functions, enabling separate management of monitoring flows and service flows. The primary controller, secondary controller, and processor work together to improve stability, reduce power consumption, and achieve greater energy conservation and environmental protection.

[0053] See also Figure 5 . An embodiment of this specification provides a task processing system. The task processing system is used to perform various computing tasks, such as image recognition tasks, speech recognition tasks, etc. The task processing system may include a data center device and N task processing devices. N is a positive integer greater than or equal to 1. The N task processing devices can communicate with the data center device. So that the data center device can assign computing tasks to the N task processing devices. The N task processing devices can be cascaded. So that the N task processing devices can communicate with each other and complete specific computing tasks together. Each of the task processing devices may include multiple of a main controller, an auxiliary controller and a processor.

[0054] In some embodiments, the data center device may be a user-oriented computer device, such as a user-oriented desktop computer or a laptop computer. Alternatively, the data center device may also be a background-oriented computer device, such as a single server or a server cluster including multiple servers. For an introduction to the task processing device, please refer to the aforementioned embodiment and will not be repeated here. Each of the task processing devices may communicate with the data center device. The N task processing devices may also communicate with each other. For example, each of the task processing devices may include a microcontroller module. Through the microcontroller module, each task processing device may communicate with the data center device. Each task processing device may communicate with other task processing modules through the microcontroller module. This enables the N task processing devices to communicate with each other. This allows for cascading expansion between task processing devices. Through cascading expansion, tasks with higher computing power and more complex calculations can be achieved.

[0055] In some embodiments, the data center device may provide a task data set. The task data set may include one or more task data. Each task data corresponds to a computing task. Optionally, each task data may also correspond to an execution priority, where the execution priority is used to indicate the priority of execution of the computing task.

[0056] In the task data set, multiple task data may not be associated with each other, and the computing tasks corresponding to the multiple task data are independent. Alternatively, in the task data set, multiple task data may be associated with each other. For example, the data center device may disassemble a large task data set to obtain the multiple task data.

[0057] In some embodiments, the data center device may distribute the task data in the task data set to the N task processing devices. Each of the task processing devices may be allocated with 0, 1, or multiple task data.

[0058] In some embodiments, the auxiliary controller in each of the task processing devices may send monitoring data to the data center device. The data center device may receive the monitoring data sent by the N task processing devices and schedule task data assigned to the N task processing devices based on the monitoring data of the N task processing devices.

[0059] The auxiliary controller in each task processing device can monitor the operating status of the task processing device and obtain monitoring data; the monitoring data can be sent to the data center equipment. Alternatively, the auxiliary controller in each task processing device can monitor the operating status of the task processing device and obtain monitoring data; the monitoring data can be analyzed to determine whether the monitoring data is abnormal; if the monitoring data is abnormal, it means that the operating status of the task processing device is abnormal, and the monitoring data can be sent to the data center equipment. Alternatively, the auxiliary controller in each task processing device can monitor the operating status of the task processing device and obtain monitoring data; the monitoring data can be analyzed to determine whether the monitoring data is abnormal; if the monitoring data is abnormal, the abnormality level of the monitoring data can be identified; the monitoring data and / or abnormality level can be sent to the data center equipment. It should be noted that each task processing device includes a microcontroller module. The auxiliary controller in the task processing device can send monitoring data, abnormality level, etc. to its own microcontroller module, so that the microcontroller module can send monitoring data, abnormality level, etc. to the data center equipment.

[0060] For example, the auxiliary controller in each task processing device can analyze monitoring data to determine whether the monitoring data is abnormal. If the monitoring data is abnormal, the auxiliary controller can select a module to be adjusted within the task processing device based on the type of monitoring data. The auxiliary controller can then send instructions to the module to execute the instructions, thereby restoring the task processing device to normal operation. Optionally, if the monitoring data is abnormal, the auxiliary controller can also identify the abnormality level of the monitoring data and determine whether the identified abnormality level meets set conditions. If so, indicating a high degree of abnormality, the auxiliary controller can send an abnormality message to the main controller. The main controller can then perform corresponding operations on the task data processing process based on the abnormality message. Optionally, if the monitoring data is abnormal, the auxiliary controller can control the display module to display a first message indicating that the task processing device's operating status is abnormal. Optionally, if the monitoring data is normal, the auxiliary controller can control the display module to display a second message indicating that the task processing device's operating status is normal. Optionally, if the monitoring data is abnormal, the auxiliary controller can send the monitoring data and / or the abnormality level of the monitoring data to the microcontroller module. It should be noted that the auxiliary controller can send monitoring data and / or abnormality levels to the micro-control module, so that the micro-control module can send monitoring data and / or abnormality levels to the data center equipment.

[0061] The data center equipment can analyze the monitoring data of each task processing device; if the monitoring data is abnormal, it means that the operating status of the task processing device is abnormal, and thus the task data may not be allocated to the task processing device. Alternatively, the data center equipment can also allocate task data to the task processing device based on the abnormality level of the task processing device's monitoring data. For example, the data center equipment can provide a task data set. The task data set can include one or more task data. Each task data can correspond to an execution priority. The execution priority and the abnormality level can have a corresponding relationship. For example, the execution priority and the abnormality level are inversely correlated. The higher the abnormality level, the lower the execution priority corresponding to the abnormality level; the lower the abnormality level, the higher the execution priority corresponding to the abnormality level. This allows computing tasks with higher execution priorities to be effectively executed. The data center equipment can use the corresponding relationship to determine the corresponding target execution priority based on the abnormality level of the task processing device's monitoring data; it can select target task data corresponding to the target execution priority from the task data set; and it can allocate target task data to the task processing device.

[0062] In some embodiments, the main controller in each of the task processing devices can obtain the resource usage data of the processor and can send the resource usage data of the processor to the data center equipment. The resource usage data is used to represent the resource usage of the processor, such as the utilization rate of the processor. It should be noted that the main controller in each of the task processing devices can send the resource usage data directly to the data center equipment. Alternatively, each of the task processing devices may also include a microcontroller module. In this way, the auxiliary controller in each of the task processing devices can send the resource usage data to its own microcontroller module, and the microcontroller module can send the resource usage data to the data center equipment.

[0063] The data center device can receive resource usage data from the N task processing devices and schedule task data assigned to the N task processing devices based on the resource usage data of the N task processing devices. The main controller in each task processing device can control the processor to process the assigned task data to obtain a processing result of the task data; the processing result of the task data can be sent to the data center device, which can then receive the processing result.

[0064] For example, the data center device may select a target task processing device from the N task processing devices based on resource usage data and assign designated task data to the target task processing device. The designated task data may be the task data with the highest execution priority in the task data set. The target task processing device may be the task processing device that uses the least resources among the N task processing devices, such as the task processing device with the lowest utilization rate.

[0065] For another example, the data center device may determine the allocation priorities of the N task processing devices based on resource usage data; and may allocate the task data in the task data set to the N task processing devices based on the allocation priorities and the execution priorities of the task data. Specifically, for example, the data center device may sort the N task processing devices in order of lowest to highest resource usage based on the resource usage data; and may use the ranking of the task processing devices in the sorted sequence as the allocation priority. The lower the resource usage, the higher the allocation priority; and the higher the resource usage, the lower the allocation priority. The data center device may determine a correspondence between the allocation priority and the execution priority. Specifically, for example, the allocation priority and the execution priority are positively correlated. The higher the allocation priority, the higher the execution priority corresponding to the allocation priority; and the lower the allocation priority, the lower the execution priority corresponding to the allocation priority. For each task processing device, the data center device may determine a corresponding target execution priority based on the allocation priority of the task processing device; may select target task data corresponding to the target execution priority from the task data set; and may allocate the target task data to the task processing device. For example, the data center device may send the target task data to the main controller of the task processing device. The main controller can control the processor to process the target task data.

[0066] The task processing system of an embodiment of this specification includes a data center device and N task processing devices. Each task processing device may include a main controller, a secondary controller, and a processor, where N is a positive integer greater than or equal to 1. The data center device may assign task data to the N task processing devices and obtain processing results of the task data. In this way, computing tasks for the N task processing devices can be scheduled by the data center device.

[0067] In the embodiments of this specification, the computer may be a rack server, a high-density server, a storage server, an edge computing server, etc., or may be one or more of any of these devices.

[0068] The various functional units in the embodiments of this specification may be integrated into one processing unit, or each functional unit may exist physically separately, or two or more functional units may be integrated into one processing unit.

[0069] Those skilled in the art will understand that this specification describes each embodiment with different emphases. For portions not described in detail in a particular embodiment, reference can be made to the relevant descriptions of other embodiments. Furthermore, it is understood that after reading this specification, those skilled in the art may, without inventive effort, conceive of any combination of some or all of the embodiments listed in this specification, and such combinations are also within the scope of disclosure and protection of this specification.

[0070] Although this specification has been described through examples, those skilled in the art will appreciate that the above examples are merely intended to facilitate understanding of the core concepts of this specification. Those skilled in the art will appreciate that this specification is susceptible to numerous variations and modifications. It is intended that the appended claims encompass such variations and modifications without departing from the spirit of this specification.

Claims

1. A task processing system based on a main controller and an auxiliary controller, characterized in that: It includes data center equipment and N task processing devices, the N task processing devices are cascaded, each of the task processing devices includes a main controller, an auxiliary controller and a processor, and N is a positive integer greater than 1; The data center equipment is used to allocate task data to the N task processing devices and obtain processing results of the task data; In each of the task processing devices, the main controller is used to control the processor to process the task data assigned to the task processing device to obtain the processing result of the task data, and the auxiliary controller is used to monitor the operating state of the task processing device to obtain monitoring data and adjust the operating state of the task processing device according to the monitoring data; The main controller and the processor are used to collaboratively process the task data assigned to the task processing device, wherein the main controller preprocesses the task data, and the processor processes the preprocessing result to obtain the processing result of the task data.

2. The system according to claim 1, characterized in that The task processing device also includes a monitoring module, a display module and a micro-control module; the auxiliary controller is used to control the monitoring module to monitor the operating status of the task processing device, and control the display module to display the operating status of the task processing device; the auxiliary controller is also used to send the monitoring data to the micro-control module; the micro-control module is used to send the monitoring data to the data center equipment; the data center equipment is used to schedule the task data assigned to the N task processing devices according to the monitoring data.

3. The system according to claim 1 or 2, characterized in that: The auxiliary controller is also used to determine the abnormal level of the task processing device according to the monitoring data, and send an abnormal message to the main controller when the abnormal level meets the set conditions; The main controller is used to perform corresponding operations on the processing process of task data according to the abnormal message.

4. The system according to claim 1, characterized in that The main controller is also used to determine a matching clock frequency based on the task data, and when the determined clock frequency is different from the current clock frequency of the main controller, send instruction information to the auxiliary controller; the auxiliary controller is also used to adjust the clock frequency of the main controller to a clock frequency matching the task data based on the instruction information.

5. The system according to claim 1, characterized in that The main controller is used to decompose the task data to obtain a plurality of subtask data; and select the subtask data whose calculation amount is less than or equal to a set threshold from the plurality of subtask data as the first subtask data; Selecting subtask data with a calculation amount greater than a set threshold from the plurality of subtask data as second subtask data; Processing the first subtask data to obtain a first subprocessing result; The processor is used to process the second subtask data to obtain a second sub-processing result; The main controller is used to determine the processing result of the task data according to the second sub-processing result and the first sub-processing result.

6. The system according to claim 1, characterized in that The main controller is used to obtain the resource usage data of the processor and send the resource usage data of the processor to the data center device; The data center equipment is used to schedule task data assigned to the task processing device according to the resource usage data.

7. The system according to claim 6, characterized in that The data center device is used to select a target task processing device from N task processing devices according to resource usage, and allocate designated task data to the target task processing device.

8. The system according to claim 6, characterized in that The data center equipment is used to determine the execution priority of the task data in the task data set, and determine the allocation priority of the N task processing devices according to resource usage; based on the execution priority and the allocation priority, the task data in the task data set is allocated to the N task processing devices.