Neuronal firing control method, many-core system, processing core and medium

By breaking down key neurons into synchronous neurons in different processing cores or machines, and using shadowing or aggregation schemes for synchronous distribution, the problem of high cross-machine communication latency is solved, and the processing efficiency of the brain simulation system is improved.

CN114912594BActive Publication Date: 2026-03-31LYNXI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-16
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

In brain simulation systems, the large amount of data in cross-machine communication and the high transmission latency result in low system efficiency. This is especially true when dealing with neurons that contain key nodes, where the cross-machine transmission latency problem is difficult to overcome.

Method used

Key neurons are broken down into synchronous neurons located in different processing cores or machines, and synchronously distributed through a shadow scheme or aggregation scheme to establish a cross-machine data transmission mechanism and reduce the transmission latency between neurons.

Benefits of technology

By distributing synchronously, the transmission delay between neurons is reduced, improving the processing efficiency and data transmission flexibility of the many-core system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114912594B_ABST
    Figure CN114912594B_ABST
Patent Text Reader

Abstract

The present disclosure provides a neuron firing control method, a many-core system, a processing core and a medium. The method is applied to a synchronous neuron in a processing core, and the method comprises: in response to first firing information sent by a predecessor neuron of the synchronous neuron, performing a firing operation to obtain parameter state information of the synchronous neuron; and synchronously firing the synchronous neuron based on the parameter state information. According to the embodiment of the present disclosure, the transmission delay can be reduced, and the processing efficiency of the many-core system can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of computer, in particular to a neuron firing control method, a many-core system, a processing core and a computer readable medium. BACKGROUND

[0002] High-performance brain-like computing technology and brain simulation technology have become an important means of brain science research. A large number of neurons are needed to work together to complete the basic functions of the human brain, and a large-scale brain simulation system is needed to accurately simulate brain functions.

[0003] At present, when the system performs brain simulation, multiple devices may be needed to perform simulation together, and cross-machine communication is needed between different devices. However, the amount of data transmitted by cross-machine transmission is large, the transmission delay is high, and the system efficiency is low. SUMMARY

[0004] The present disclosure provides a neuron firing control method, a many-core system, a processing core and a computer readable medium.

[0005] In a first aspect, the present disclosure provides a neuron firing control method applied to a synchronous neuron in a processing core, which comprises: in response to first firing information sent by a predecessor neuron of the synchronous neuron, performing firing operation to obtain parameter state information of the synchronous neuron; and synchronously firing based on the parameter state information and the synchronous neuron outside the processing core.

[0006] In some embodiments, the synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: according to the parameter state information, performing pre-firing when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire.

[0007] In some embodiments, the pre-firing according to the parameter state information when the first preset firing condition is met, and the controlling the synchronous neuron outside the processing core to fire, comprises:

[0008] sending second firing information to a successor neuron of the synchronous neuron itself; and sending the second firing information to the synchronous neuron outside the processing core, so that the synchronous neuron outside the processing core fires according to the second firing information.

[0009] In some embodiments, the synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: sending the parameter state information to a synchronous control unit outside the processing core, so that the synchronous control unit performs firing operation according to the parameter state information sent by the synchronous neuron connected to the synchronous control unit, and issues a synchronous control instruction to the synchronous neuron connected to the synchronous control unit when a second preset firing condition is met, wherein each pair of synchronous neurons belongs to different processing cores.

[0010] In response to the synchronization control command issued by the synchronization control unit, a subsequent release is performed.

[0011] In some embodiments, the synchronization control unit is a synchronization control neuron, and the synchronization control neuron is any one of the synchronization neurons.

[0012] In some embodiments, the parameter status information includes at least one of the following: membrane potential parameter, weighting parameter, and discharge threshold parameter.

[0013] Secondly, this disclosure provides a neuron firing control method applied to a synchronous neuron within a processing nucleus. The method includes: firing in response to a second firing message sent by a synchronous neuron outside the processing nucleus, wherein the second firing message is sent by the synchronous neuron outside the processing nucleus when it pre-firing upon meeting a first preset firing condition.

[0014] Thirdly, this disclosure provides a neuron firing control method applied to a synchronization control unit within a processing nucleus, the method comprising:

[0015] The firing operation is performed based on the parameter status information sent by the synchronous neuron connected to the synchronous control unit; when the second preset firing condition is met, a synchronous control command is sent to the synchronous neuron connected to the synchronous control unit to control the synchronous neuron connected to the synchronous control unit to fire later; wherein, each synchronous neuron belongs to a different processing core; the parameter status information is obtained by the synchronous neuron from the firing operation based on the first firing information sent by its predecessor neuron.

[0016] Fourthly, this disclosure provides a many-core system, comprising: multiple processing cores, wherein at least some of the processing cores are provided with synchronous neurons; synchronous neurons are used to perform firing operations in response to a first firing information sent by a successor neuron of the synchronous neuron to obtain parameter state information of the synchronous neuron; and to fire synchronously with synchronous neurons outside the processing core based on the parameter state information.

[0017] Fifthly, this disclosure provides a processing core having a program stored thereon, wherein the processing core executes the program to implement the neuron firing control method as described in the above embodiments.

[0018] In a sixth aspect, this disclosure provides a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the neuron firing control method as described in the above embodiments.

[0019] The neuron firing control method, many-core system, processing core, and computer-readable medium disclosed herein can decompose a neuron into synchronous neurons that are located in different processing cores and have an association relationship. These synchronous neurons can fire synchronously, thereby establishing a cross-machine data transmission mechanism at the neuron granularity, which can reduce the transmission delay between neurons and improve the processing efficiency of the many-core system.

[0020] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0021] The accompanying drawings are provided to further illustrate the present disclosure and form part of the specification. They are used together with the embodiments of the present disclosure to explain the disclosure and do not constitute a limitation thereof. The above and other features and advantages will become more apparent to those skilled in the art from the detailed description of exemplary embodiments with reference to the accompanying drawings, in which:

[0022] Figure 1 A schematic diagram of a key neuron provided for an embodiment of this disclosure;

[0023] Figure 2 A flowchart of a neuron firing control method provided in this disclosure embodiment;

[0024] Figure 3 A schematic diagram of a synchronization neuron provided in an embodiment of this disclosure;

[0025] Figure 4 A flowchart of a neuron firing control method provided in this disclosure embodiment;

[0026] Figure 5 A flowchart of a neuron firing control method provided in this disclosure embodiment;

[0027] Figure 6 A schematic diagram of the synchronization neuron and synchronization control unit provided in the embodiments of this disclosure;

[0028] Figure 7a and Figure 7b A schematic diagram of a neuron firing control method provided in an embodiment of this disclosure; Figure 8 This is a schematic diagram of the structure of a many-core system provided in an embodiment of the present disclosure. Detailed Implementation

[0029] To enable those skilled in the art to better understand the technical solutions of this disclosure, exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments of this disclosure to aid understanding. These should be considered merely exemplary. Therefore, those skilled in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0030] Where there is no conflict, the various embodiments of this disclosure and the features thereof in the embodiments may be combined with each other.

[0031] As used herein, the term “and / or” includes any and all combinations of one or more related enumerated entries.

[0032] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. As used herein, the singular forms “a” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that when the terms “comprising” and / or “made of” are used in this specification, they specify the presence of features, integrals, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof. Words such as “connected” or “linked” are not limited to physical or mechanical connections but can include electrical connections, whether direct or indirect.

[0033] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this disclosure, and will not be interpreted as having an idealized or overly formal meaning, unless expressly so defined herein.

[0034] When performing brain simulation, a brain simulation system may require multiple devices to work together. Different devices need to communicate across machines, but the amount of data transmitted across machines is large, the transmission delay is high, and the system efficiency is low.

[0035] Especially for neurons at some key nodes (which can be called key neurons), such as Figure 1 As shown, this key neuron is connected to many neurons (e.g., neurons in different processing nuclei or different machines), and it fires and receives a large number of signals. For example... Figure 1The key neuron located in machine 1 can be connected to multiple neurons in machine 1 and machine 2. It can receive information from the predecessor neurons in machine 1 and machine 2 and send information to the successor neurons in machine 1 and machine 2.

[0036] The more key neurons a critical node has, the better the brain simulation effect. However, the more key nodes and neurons there are, especially in many-core systems used for brain simulation with many clusters, the more difficult it is to overcome the problem of large latency in cross-machine transmission of brain simulation data.

[0037] According to embodiments of this disclosure, a key neuron can be decomposed into two or more related neurons, which reside in different processing cores or even different machines or devices, and can be synchronously deployed. This enables the establishment of a cross-machine data transmission mechanism at the neuron level, reducing transmission latency between neurons and improving system efficiency.

[0038] According to embodiments of this disclosure, it can be applied to processing cores in many-core systems. A processing core in a many-core system, also referred to as a "core," "core," or "functional core," is the smallest independently schedulable unit in a many-core system with complete computing capabilities. Each processing core has its own storage and computing resources. A single many-core system includes multiple processing cores, and these cores communicate with each other via an on-chip network or on-chip bus. A device or machine may include one or more processing cores.

[0039] In some embodiments, each processing core may be loaded with one or more neurons. The neurons may perform firing operations based on information from the previous level (such as the successor neuron or the input layer) and send firing information to the next level (such as the successor neuron or the output layer) when firing conditions are met (such as reaching a firing threshold).

[0040] In some embodiments, the neurons loaded in the many-core system can be neurons in a neural network. The neural network is used to implement preset processing tasks, such as image processing tasks, speech processing tasks, text processing tasks, video processing tasks, etc. This disclosure does not limit the specific type of processing tasks performed by the neural network.

[0041] Figure 2 This is a flowchart illustrating a neuron firing control method provided in an embodiment of the present disclosure. In some embodiments, the method is applied to synchronous neurons within a processing nucleus of a many-core system. Figure 2 As shown, the method includes:

[0042] Step S11: In response to the first firing information sent by the successor neuron of the synchronization neuron, a firing operation is performed to obtain the parameter state information of the synchronization neuron;

[0043] Step S12: Based on the parameter state information, the synchronous neurons outside the processing nucleus fire synchronously.

[0044] For example, for any neuron, its predecessor neuron is the neuron whose output end is connected to its own input end; correspondingly, its successor neuron is the neuron whose input end is connected to its own output end.

[0045] In some embodiments, two or more neurons that are related may be referred to as a group of synchronous neurons. Different synchronous neurons in a group of synchronous neurons are located in different processing nuclei, or possibly in processing nuclei in different devices or machines.

[0046] For example, an interneuron that is connected to multiple neurons in different processing cores or even different machines can be broken down into a group of synchronous neurons with an association relationship. It should be understood that a group of synchronous neurons with an association relationship can also be other cases, and those skilled in the art can set the association relationship between neurons according to the actual situation, and this disclosure does not limit it.

[0047] In some embodiments, each synchronizing neuron may have at least one predecessor neuron and / or at least one successor neuron, which are located in their respective processing cores (or machines). Predecessors and successors located in other processing cores (or other machines) are connected to the synchronizing neurons in their corresponding processing cores (or machines). Thus, each synchronizing neuron receives information from its predecessor neurons within its core (or machine) and transmits information to its successor neurons within its core (or machine), eliminating the need to wait for inter-core (or inter-machine) transmission delays, thereby improving the speed of information reception and transmission.

[0048] In some embodiments, corresponding to a synchronous neuron A having multiple predecessor neurons and no successor neurons in its processing nucleus, and another synchronous neuron B having multiple successor neurons and no predecessor neurons in its processing nucleus, the predecessor neurons of synchronous neuron A, synchronous neuron A, synchronous neuron B, and the successor neurons of synchronous neuron B constitute a cross-nucleus neuronal cluster. Synchronous neuron A and synchronous neuron B are a fixed group of synchronous neurons, equivalent to an intermediate neuron in a neural network.

[0049] In some embodiments, a group of synchronizing neurons can each perform firing operations independently, and information can be aggregated and synchronized among these neurons. This scheme can be called a aggregation scheme, which means aggregating the information of a group of synchronizing neurons. Figure 3 This is a schematic diagram of a synchronization neuron provided in an embodiment of this disclosure. Figure 3As shown, two synchronous neurons with a relationship each perform firing operations and can synchronize their information. Through information aggregation, each synchronous neuron in the same group can perform operations independently, firing in advance when needed, thus improving firing speed. Simultaneously, the information from each synchronous neuron is aggregated, and then fired in the subsequent stages when needed, thereby improving the system's processing accuracy.

[0050] In some embodiments, a group of synchronizing neurons can be operated by one synchronizing neuron, with other synchronizing neurons directly synchronizing with the firing result of that synchronizing neuron, and also firing when that synchronizing neuron fires. This scheme can be called the shadow scheme, where other synchronizing neurons act as shadow neurons of that synchronizing neuron. Through the shadow firing method, only some synchronizing neurons in the same group perform operations, while others only fire, reducing the number of neurons involved in the operation and improving the system's processing efficiency.

[0051] It should be understood that those skilled in the art can set the synchronization method between a group of synchronous neurons according to the actual situation, and this disclosure does not limit this.

[0052] In some embodiments, at any time step during system operation, for any synchronous neuron, upon receiving a first firing information (which may include one or more firing information) sent by the predecessor neuron of the synchronous neuron, a firing operation can be performed in response to the first firing information in step S11. That is, the membrane potential state of the synchronous neuron is calculated based on the first firing information and its own current neuron parameters (including weights and firing thresholds, etc.) to obtain the parameter state information of the synchronous neuron.

[0053] In some embodiments, the parameter status information may include at least one of a membrane potential parameter, a weighting parameter, and a firing threshold parameter. The parameter status information may also include a firing flag that directly indicates whether firing has occurred. In some embodiments, the weighting parameter and the firing threshold parameter may be adaptively adjustable, and the parameter status information may also include dynamic change information for each parameter and a change flag.

[0054] In some embodiments, the parameter state information may further include the identification information of the synchronous neuron, which points to at least one of the processing core and the device to which the neuron belongs, and points to the corresponding neuron, including various forms such as tags and flag bits, which are not limited in this disclosure.

[0055] This disclosure does not limit the specific content included in the parameter status information.

[0056] In some embodiments, in step S12, the firing can be synchronized with the synchronous neurons outside the processing nucleus based on the parameter state information.

[0057] In some embodiments, when a group of synchronous neurons adopts a shadow scheme, the synchronous neuron can determine whether a preset firing condition (e.g., reaching a firing threshold) is met based on parameter state information in step S12; if the preset firing condition is met, firing is performed directly (referred to as pre-firing), and other synchronous neurons outside the processing nucleus are controlled to fire, for example, by sending corresponding control information; if the preset firing condition is not met, no information is sent to other synchronous neurons outside the processing nucleus.

[0058] By using the shadow delivery method, the synchronous neuron performs the computation and pre-delivers when needed, thus improving the delivery speed. Other synchronous neurons in the same group only deliver based on control information, which reduces the number of neurons involved in the computation and improves the system's processing efficiency.

[0059] In some embodiments, when a group of synchronous neurons adopts a summarization scheme, the synchronous neuron can send its own parameter state information to the synchronization control unit (e.g., one of the synchronous neurons in the group, or a single neuron). The synchronization control unit then performs a firing operation on the parameter state information of each synchronous neuron in the group, that is, it performs membrane potential accumulation and firing judgment based on the membrane potential information fed back by the synchronous neurons. When it is determined that the firing condition is met, the synchronous neuron is controlled to fire. Regardless of whether the firing occurs, the synchronization control unit can control each synchronous neuron to update its state information, such as the membrane potential that has not been fired, the accumulated membrane potential, or the membrane potential that has been reset after firing, in order to perform integration operations and firing judgments in the next time step.

[0060] By using information aggregation processing, each synchronous neuron in the same group can perform calculations independently, and pre-firing can be performed when necessary, thus improving the firing speed. At the same time, the information of each synchronous neuron is aggregated, the state information is updated after aggregation, and post-firing can be performed when necessary, thereby improving the processing accuracy of the system.

[0061] According to embodiments of this disclosure, key neurons can be decomposed into synchronous neurons located in different processing cores and having an association relationship. These synchronous neurons can fire synchronously, thereby reducing the transmission delay between neurons within the same processing core or within the same machine and improving the processing efficiency of many-core systems.

[0062] The neuron firing control method according to embodiments of this disclosure will now be described in detail.

[0063] As mentioned earlier, two or more neurons that are related can be called a group of synchronous neurons. Before performing the processing in steps S11-S12, the relationship between synchronous neurons can be established first.

[0064] In some embodiments, prior to step S11, the neuron firing control method according to the present disclosure may further include: sending its own identification information to other synchronized neurons to establish an association with other synchronized neurons. The identification information points to at least one of the processing core and the device to which the neuron belongs, and to the corresponding neuron, and may include various forms such as tags and flag bits. This disclosure does not impose limitations in this regard.

[0065] In some embodiments, synchronous neurons can mutually confirm identification information to establish a relationship between synchronous neurons, so that a group of synchronous neurons can be equivalent to an intermediate neuron in a neural network.

[0066] In some embodiments, a group of synchronizing neurons may employ a shadow scheme, where one synchronizing neuron performs the firing operation and the other synchronizing neurons directly synchronize the firing operation result of that synchronizing neuron.

[0067] For a synchronous neuron performing firing operations, at any time step, in step S11, its membrane potential state can be calculated based on the first firing information sent by the predecessor neuron and its current neuron parameters (including weights and firing thresholds), thus obtaining the parameter state information of the synchronous neuron. Then, synchronization is performed in step S12.

[0068] In some embodiments, step S12 may include:

[0069] Based on the parameter status information, when the first preset firing condition is met, pre-firing is performed, and the synchronous neurons outside the processing nucleus are controlled to fire.

[0070] In other words, the synchronous neuron can determine whether the first preset firing condition (e.g., reaching the firing threshold) is met based on the parameter state information. If the first preset firing condition is met, firing is performed directly (referred to as pre-firing), and other synchronous neurons outside the processing nucleus are controlled to fire, for example, by sending corresponding control information. If the first preset firing condition is not met, no information is sent to other synchronous neurons outside the processing nucleus. This disclosure does not limit the specific content of the first preset firing condition.

[0071] In this way, the firing operation can be concentrated in a single neuron, improving processing efficiency.

[0072] In some embodiments, the step of pre-firing when a first preset firing condition is met, based on parameter state information, and controlling the firing of the synchronous neurons outside the processing nucleus, may include:

[0073] A second firing message is sent to the successor neurons of the synchronizing neuron itself; a second firing message is also sent to the synchronizing neurons outside the processing nucleus, so that the synchronizing neurons outside the processing nucleus fire according to the second firing message.

[0074] In other words, the pre-firing process involves sending a second firing message to the successor neurons of the synchronizing neuron, enabling each successor neuron to process the information accordingly. This method increases the speed of information transmission, allowing successor neurons to receive the firing message earlier and perform the necessary processing.

[0075] In some embodiments, sending the second firing information to the successor neurons of the synchronizing neuron itself can be sending the second firing information to all or some of the successor neurons, and this disclosure does not limit this.

[0076] In some embodiments, the process of controlling the firing of the synchronous neurons outside the processing nucleus involves sending a second firing message to the synchronous neurons outside the processing nucleus, causing the synchronous neurons outside the processing nucleus to fire according to the second firing message. This method reduces the number of neurons involved in the computation and improves the system's processing efficiency.

[0077] Figure 4 A flowchart illustrating a neuron firing control method provided in this disclosure. This method is applied to processing synchronous neurons within the nucleus, such as... Figure 4 As shown, the method includes:

[0078] Step S31: In response to the second firing information sent by the synchronous neuron outside the processing nucleus, firing is performed, wherein the second firing information is sent by the synchronous neuron outside the processing nucleus when it performs pre-firing in accordance with the first preset firing condition.

[0079] In other words, for a synchronous neuron that does not perform firing operations in the shadow scheme, a synchronous neuron that performs firing operations in the same group of synchronous neurons will send a second firing information to that synchronous neuron when firing. If the second firing information is received, the synchronous neuron sends the second firing information to its successor neurons so that each successor neuron can perform corresponding processing according to the second firing information. This process can be called post-firing. If the second firing information is not received, no processing is performed in that synchronous neuron.

[0080] In this way, the entire firing process of a group of synchronous neurons using the shadow scheme can be realized. The synchronous neurons performing the operation can fire quickly, improving the speed of information transmission; and control the firing of other synchronous neurons in the same group, thereby reducing the number of neurons involved in the operation and improving the system processing efficiency.

[0081] In some embodiments, a group of synchronous neurons may also adopt a summarization scheme, that is, a group of synchronous neurons can each perform firing operations, and the information can be summarized and synchronized among the group of synchronous neurons.

[0082] In the aggregation scheme, a synchronization control unit can be set up to aggregate and control the synchronization of information from a group of synchronized neurons. The synchronization control unit is a synchronization control neuron, which can be any one of the synchronized neurons. That is, any one of the synchronized neurons in a group can be used as the synchronization control unit, thereby reducing the number of neurons required by the group.

[0083] In some embodiments, a separate synchronization control unit for neurons may also be provided. This disclosure does not limit the specific configuration of the synchronization control unit.

[0084] In some embodiments, in the summarization scheme, for one of a group of synchronizing neurons, a firing operation can be performed in step S11 in response to the first firing information sent by its predecessor neuron to obtain the parameter state information of that synchronizing neuron. Then, synchronization is performed in step S12.

[0085] In some embodiments, step S12 may include:

[0086] The synchronous control unit outside the processing core sends parameter status information to the synchronous control unit so that the synchronous control unit can perform the distribution calculation based on the parameter status information sent by the synchronous neuron connected to the synchronous control unit. When the second preset distribution condition is met, the synchronous control command is issued to the synchronous neuron connected to the synchronous control unit. Each synchronous neuron belongs to a different processing core.

[0087] In response to the synchronization control command issued by the synchronization control unit, a subsequent release is performed.

[0088] For example, each pair of synchronous neurons belongs to a different processing core. The synchronization control unit is located in another processing core outside the processing core where the synchronous neuron is located. The synchronous neuron can send parameter status information to the synchronization control unit outside the processing core so that the synchronization control unit can summarize the information.

[0089] In some embodiments, when the synchronization control unit receives parameter state information sent by the synchronization neuron connected to the synchronization control unit, it can perform firing calculations based on the parameter state information to obtain summarized state information (e.g., membrane potential state); if the summarized state information meets the second preset firing condition, it sends a synchronization control command to the synchronization neuron connected to the synchronization control unit to enable each synchronization neuron to fire.

[0090] In some embodiments, upon receiving a synchronization control command from the synchronization control unit, a synchronous neuron can send corresponding firing information to its successor neurons; this is called post-firing. By aggregating information from multiple neurons and processing synchronous firing, each synchronous neuron in the same group can perform calculations independently, and pre-firing occurs when firing is required, thus improving firing speed. Simultaneously, the synchronization control unit aggregates information from each synchronous neuron and controls the synchronous neuron to perform post-firing when firing is needed, thereby improving the system's processing accuracy.

[0091] In some embodiments, for the synchronization control unit, if the aggregated state information does not meet the second preset distribution condition, the aggregated state information can be distributed to the synchronization neuron connected to the synchronization control unit. Upon receiving the distributed state information, the synchronization neuron can update its own state, for example, by updating its membrane potential state.

[0092] In this way, the states of each synchronization neuron are synchronized, so that the next time step can continue processing based on the state information of the current time step, thereby improving the accuracy of processing by each synchronization neuron and thus improving the system's processing precision.

[0093] In some embodiments, for a synchronizing neuron, in step S12, if the parameter state information meets the firing conditions, it can directly fire to its successor neurons; this process can be called pre-firing. Simultaneously, the parameter state information is also sent to the synchronization control unit for aggregation. This method improves the firing speed of the synchronizing neuron itself, enabling successor neurons to quickly receive the firing information for subsequent processing. Furthermore, this method does not affect the aggregation and synchronization between individual synchronizing neurons.

[0094] In this case, if the synchronization control unit that has already completed the previous issuance receives the synchronization control command from the synchronization control unit in the same time step, it does not need to issue it again, thus avoiding duplicate issuance of information.

[0095] Figure 5 A flowchart illustrating a neuron firing control method provided in this disclosure. This method is applied to a synchronization control unit within the processing kernel, such as... Figure 5 As shown, the method includes:

[0096] Step S41: Perform the distribution calculation based on the parameter status information sent by the synchronization neuron connected to the synchronization control unit;

[0097] Step S42: When the second preset firing condition is met, a synchronization control command is sent to the synchronization neuron connected to the synchronization control unit to control the synchronization neuron connected to the synchronization control unit to perform post-firing.

[0098] In this system, each pair of synchronous neurons belongs to a different processing nucleus; the parameter state information is obtained by the synchronous neuron through firing calculation based on the first firing information sent by its predecessor neuron.

[0099] In other words, for the synchronization control unit, when it receives parameter state information sent by the synchronization neuron connected to the synchronization control unit, it can perform output calculation based on these parameter state information in step S41 to obtain the summarized state information (e.g., membrane potential state).

[0100] In some embodiments, if the aggregated state information meets the second preset distribution condition, a synchronization control command is sent to the synchronization neurons connected to the synchronization control unit in step S42 to enable each synchronization neuron to distribute its state. If the aggregated state information does not meet the second preset distribution condition, the aggregated state information can be sent to the synchronization neurons connected to the synchronization control unit to enable each synchronization neuron to synchronize its own state. In this way, each synchronization neuron can continue processing based on the state information of the current time step in the next time step, improving the accuracy of the state information of each synchronization neuron and thus improving the system's processing precision.

[0101] In some embodiments, when a synchronizing neuron receives a synchronization control command from a synchronization control unit and has not performed a pre-firing, it can send corresponding firing information to its successor neuron, i.e., post-firing.

[0102] In some embodiments, when a synchronous neuron receives a synchronization control command from a synchronization control unit and has already pre-fired, it may only update its own state (e.g., the membrane potential reset after firing) without post-firing, so that it can be processed in the next time step (integration calculation, firing judgment) and avoid duplicate firing of information.

[0103] In some embodiments, when a synchronous neuron receives state information from a synchronization control unit, it can update its own state, such as updating the unfired, accumulated membrane potential state, so that it can be processed in the next time step (integration operation, firing judgment).

[0104] By aggregating and synchronously firing multiple neurons, each synchronous neuron in the same group can perform calculations independently and fire in advance when needed, thus improving the firing speed. At the same time, the synchronous control unit aggregates the information of each synchronous neuron and controls the synchronous neuron to fire in the later stage when needed, thereby improving the processing accuracy of the system.

[0105] Figure 6 This is a schematic diagram of the synchronization neuron and synchronization control unit provided in an embodiment of this disclosure.Figure 6 As shown, machine 1 contains synchronous neuron A51, machine 2 contains synchronous neuron A52, and machine 3 contains synchronous control unit B51. Synchronous neuron A51 and synchronous neuron A52 each have their own predecessor neuron and successor neuron (not shown). The synchronous neuron can receive information from the predecessor neuron (arrow pointing to the synchronous neuron) and send information to the successor neuron (outward arrow from the synchronous neuron).

[0106] In the example, when synchronous neuron A51 receives the first firing information sent by its predecessor neuron, it performs firing operation to obtain the parameter state information of synchronous neuron A51. If the parameter state information meets the firing conditions of synchronous neuron A51, it can directly fire to its own successor neuron, so that the successor neuron can quickly receive the firing information for subsequent processing.

[0107] In the example, regardless of whether the synchronous neuron A51 fires before firing, the parameter status information is sent to the synchronous control unit B51. When the synchronous control unit B51 receives the parameter status information of the synchronous neuron A51 and the synchronous neuron A52, it performs firing calculations based on these two parameter status information to obtain the summarized status information.

[0108] In the example, if the aggregated state information meets the issuance conditions of the synchronization control unit B51 (which may differ from the issuance conditions of A51 and A52), then synchronization control commands are issued to A51 and A52 to enable them to issue commands. If the aggregated state information does not meet the issuance conditions, then the aggregated state information can be issued to A51 and A52 to enable each synchronization neuron to synchronize its own state.

[0109] In the example, when the synchronization neuron A51 receives the synchronization control command issued by the synchronization control unit B51, it can perform a post-fire to its successor neuron without performing a pre-fire itself.

[0110] In the example, when the synchronous neuron A51 receives the synchronization control command issued by the synchronization control unit B51 and has already pre-fired, it can update its own state (e.g., the membrane potential reset after firing) without post-firing, so that it can be processed in the next time step and avoid duplicate firing information.

[0111] In the example, when the synchronous neuron A51 receives the state information from the synchronous control unit B51, it can update its own state, such as updating the unreleased and accumulated membrane potential state, so that it can be processed in the next time step.

[0112] In the example, the processing of synchronous neuron A52 is similar to that of synchronous neuron A51.

[0113] In this way, the aggregation and synchronization process of a group of synchronous neurons is achieved.

[0114] Figure 7a and Figure 7b This is a schematic diagram of a neuron firing control method provided in an embodiment of this disclosure. Figure 7a The diagram shows the structure of a fully connected layer, where neurons A1, A2, A3, and A4 are the predecessor neurons of neurons B1, B2, and B3, respectively, and neurons C1, C2, C3, and C4 are the successor neurons of neurons B1, B2, and B3, respectively. The entire processing involves a large amount of data and cannot be implemented on a single machine. Furthermore, the large transmission latency across machines results in low processing efficiency.

[0115] like Figure 7b As shown, neurons B1, B2, and B3 can be split into B1-1, B1-2, B2-1, B2-2, B3-1, and B3-2, respectively. Neurons A1, A2, A3, and A4, along with neurons B1-1, B2-1, and B3-1, are executed in machine 1; neurons B1-2, B2-2, and B3-2, along with neurons C1, C2, C3, and C4, are executed in machine 2. Neurons A1, A2, A3, A4, B1-1, B1-2, B2-1, B2-2, B3-1, B3-2, C1, C2, C3, and C4 constitute a cross-machine neuron cluster.

[0116] In the example, neurons B1-1, B1-2, B2-1, B2-2, B3-1, and B3-2 can be used to form three sets of synchronous neurons (B1-1, B1-2), (B2-1, B2-2), and (B3-1, B3-2) using a shadow scheme. For synchronous neuron B1-1, it receives firing information from its predecessor neurons A1, A2, A3, and A4, performs firing operations, and sends firing information to synchronous neuron B1-2 when the firing condition is met. After receiving the firing information, synchronous neuron B1-2 fires information to its successor neurons C1, C2, C3, and C4.

[0117] In this way, the firing of neurons can be synchronized across machines.

[0118] According to the neuron firing control method of this disclosure, key neurons can be decomposed into synchronous neurons that are located in different processing cores and have an association relationship. These synchronous neurons can be fired synchronously using methods such as shadow schemes or aggregation schemes, establishing a cross-machine data transmission mechanism at the neuron granularity, thereby reducing transmission latency, improving the synchronization between neurons and the flexibility of data transmission, and improving the processing efficiency of many-core systems.

[0119] Figure 8This is a schematic diagram of the structure of a many-core system provided in an embodiment of this disclosure. Figure 8 As shown, according to embodiments of this disclosure, a many-core system is also provided, comprising:

[0120] Multiple processing cores 71, wherein at least some processing cores are provided with synchronous neurons (not shown); the synchronous neurons are used to perform firing operations in response to the first firing information sent by the predecessor neurons of the synchronous neurons to obtain the parameter state information of the synchronous neurons; and fire synchronously with synchronous neurons outside the processing core based on the parameter state information.

[0121] In some embodiments, such as Figure 8 As shown, the many-core system also includes an on-chip network 72, in which multiple processing cores 71 are connected to the on-chip network 72, which is used to exchange data between multiple processing cores and external data.

[0122] One or more processing cores 71 store one or more instructions, and the one or more instructions are executed by one or more processing cores 71 to enable the synchronous neurons or synchronous control units in one or more processing cores 71 to execute the above-described neuron firing control method.

[0123] According to embodiments of this disclosure, a processing core is also provided. The processing core stores a program, which is executed by the processing core to implement the steps in any of the neuron firing control methods described in the above embodiments.

[0124] According to embodiments of this disclosure, a computer-readable medium is also provided. This computer-readable medium stores a computer program, which, when executed by a processor, implements the steps of any of the neuron firing control methods described in the above embodiments.

[0125] It will be understood by those skilled in the art that all or some of the steps, systems, or apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software may be distributed on a computer-readable medium, which may include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, it is well known to those skilled in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.

[0126] Example embodiments have been disclosed herein, and while specific terminology has been used, it is for illustrative purposes only and should be construed as such, and is not intended to be limiting. In some instances, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in connection with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in connection with other embodiments, unless otherwise expressly indicated. Therefore, those skilled in the art will understand that various changes in form and detail may be made without departing from the scope of this disclosure as set forth by the appended claims.

Claims

1. A neuron firing control method applied to a synchronous neuron in a processing core, the method comprising: performing a firing operation in response to first firing information sent by a preceding neuron of the synchronous neuron to obtain parameter state information of the synchronous neuron; and synchronously firing based on the parameter state information and a synchronous neuron outside the processing core. The synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: performing a preceding firing according to the parameter state information when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire. The preceding firing refers to the synchronous neuron in the processing core directly firing to a succeeding neuron of itself when the parameter state information meets the first preset firing condition.

2. The neuronal firing control method of claim 1, wherein, The performing a preceding firing according to the parameter state information when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire comprises: sending second firing information to the succeeding neuron of the synchronous neuron; and sending the second firing information to the synchronous neuron outside the processing core to make the synchronous neuron outside the processing core fire according to the second firing information. The synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: sending the parameter state information to a synchronous control unit outside the processing core, so that the synchronous control unit performs a firing operation according to parameter state information sent by a synchronous neuron connected to the synchronous control unit, and issues a synchronous control instruction to the synchronous neuron connected to the synchronous control unit when a second preset firing condition is met, wherein each pair of synchronous neurons belongs to different processing cores. The performing a preceding firing according to the parameter state information when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire comprises: sending second firing information to the succeeding neuron of the synchronous neuron; and sending the second firing information to the synchronous neuron outside the processing core to make the synchronous neuron outside the processing core fire according to the second firing information.

3. The neuronal firing control method of claim 2, wherein, The synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: sending the parameter state information to a synchronous control unit outside the processing core, so that the synchronous control unit performs a firing operation according to parameter state information sent by a synchronous neuron connected to the synchronous control unit, and issues a synchronous control instruction to the synchronous neuron connected to the synchronous control unit when a second preset firing condition is met, wherein each pair of synchronous neurons belongs to different processing cores. The performing a preceding firing according to the parameter state information when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire comprises: sending second firing information to the succeeding neuron of the synchronous neuron; and sending the second firing information to the synchronous neuron outside the processing core to make the synchronous neuron outside the processing core fire according to the second firing information. The synchronously firing based on the parameter state information and the synchronous neuron outside the processing core comprises: sending the parameter state information to a synchronous control unit outside the processing core, so that the synchronous control unit performs a firing operation according to parameter state information sent by a synchronous neuron connected to the synchronous control unit, and issues a synchronous control instruction to the synchronous neuron connected to the synchronous control unit when a second preset firing condition is met, wherein each pair of synchronous neurons belongs to different processing cores.

4. The neuronal firing control method of claim 1, wherein, The performing a preceding firing according to the parameter state information when a first preset firing condition is met, and controlling the synchronous neuron outside the processing core to fire comprises: sending second firing information to the succeeding neuron of the synchronous neuron; and sending the second firing information to the synchronous neuron outside the processing core to make the synchronous neuron outside the processing core fire according to the second firing information. 8.A neuron firing control method applied to a synchronous control unit in a processing core, the method comprising: performing a firing operation according to parameter state information sent by a synchronous neuron connected to the synchronous control unit. ​ ​ 5. The neuronal firing control method of claim 4, wherein, ​ 6. The neuronal firing control method of claim 1, wherein, ​ ​ ​ ​ ​ ​ when the second preset firing condition is met, issuing a synchronous control instruction to a synchronous neuron connected to the synchronous control unit to control the synchronous neuron connected to the synchronous control unit to fire later; wherein each of the synchronous neurons belongs to a different processing core; the parameter state information is obtained by the synchronous neuron through firing operation according to the first firing information sent by the predecessor neuron of the synchronous neuron; wherein the later firing refers to that, under the condition that the synchronous neuron connected to the synchronous control unit receives the synchronous control instruction issued by the synchronous control unit, the synchronous neuron sends corresponding firing information to the successor neuron of the synchronous neuron.

9. A many-core system, comprising: a plurality of processing cores, wherein at least part of the processing cores are provided with a synchronous neuron; a synchronous neuron, configured to, in response to first firing information sent by a predecessor neuron of the synchronous neuron, perform firing operation to obtain parameter state information of the synchronous neuron, and fire synchronously with a synchronous neuron outside the processing core based on the parameter state information.

10. A processing core having stored thereon a program, wherein, The processing core executes the program to implement the neuron firing control method according to any one of claims 1-8.

11. A computer readable medium having stored thereon a computer program, wherein, The computer program, when executed by a processor, implements the neuron firing control method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Distributed extensible analog computing method based on cluster architecture

    CN113485796A

  • Neuron instruction coding-based brain-like computing system and computing method

    CN114399033A