CN113807511B - Impulse neural network multicast router and method - Google Patents

Impulse neural network multicast router and method Download PDF

Info

Publication number
CN113807511B
CN113807511B CN202111118621.6A CN202111118621A CN113807511B CN 113807511 B CN113807511 B CN 113807511B CN 202111118621 A CN202111118621 A CN 202111118621A CN 113807511 B CN113807511 B CN 113807511B
Authority
CN
China
Prior art keywords
data packet
address
input
forwarding
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111118621.6A
Other languages
Chinese (zh)
Other versions
CN113807511A (en
Inventor
吴建军
冯春
徐开明
万斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Original Assignee
Peking University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CN202111118621.6A priority Critical patent/CN113807511B/en
Publication of CN113807511A publication Critical patent/CN113807511A/en
Application granted granted Critical
Publication of CN113807511B publication Critical patent/CN113807511B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17312Routing techniques specific to parallel machines, e.g. wormhole, store and forward, shortest path problem congestion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17318Parallel communications techniques, e.g. gather, scatter, reduce, roadcast, multicast, all to all
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Neurology (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application discloses a pulse neural network multicast router and a method thereof, wherein the router comprises an input buffer group, a switching array, an output buffer group, an arbitration control unit, two loop-back prevention forwarding units, a switching control unit, a plurality of input/output ports and an input/output port connected with a local computing unit, the router adopts a multicast forwarding mode, namely pulse data packets input by each port are respectively forwarded to other ports, if the pulse data packets are generated by the computing unit of the node, the pulse data packets are sent to all ports, and the basic frame structure of the pulse data packets comprises a pulse source address SID, a data load PL and forwarding times N. The application has the advantages that: the technical scheme of the application can effectively reduce the implementation complexity of the router in the impulse neural network, and simultaneously provides a simple and effective multicast routing method to reduce the time period of effective transmission of the neuron impulse.

Description

Impulse neural network multicast router and method
Technical Field
The application relates to the field of brain-like computation, in particular to a pulse neural network multicast router and a method.
Background
The structure of biological nerves, especially human brain nerves, presents a complex network architecture. Tens or even hundreds of billions of neurons become nodes of a neural network, while each neuron receives the input of other neurons via its own thousands of dendrites, and the pulses of its output are transmitted via axons to the dendrites of thousands of neurons. In a biological neural network, each neuron transmits as information a pulse (spikes).
In modern general artificial intelligence technology, namely brain-like computing technology research, a pulse neural network (Spiking Neuron Networks) based on a pulse neuron model is generally adopted to develop corresponding brain science simulation calculation. In the specific implementation of the impulse neural network, mesh (Mesh network)/Torus (ring network) is a topology structure with better performance. Generally, a network is made up of nodes and channels connecting them. The node itself generally comprises a calculation unit which simulates the operation of neurons, and a routing unit which performs the transmission and forwarding of nerve impulses (spikes).
As previously mentioned, the output of one neuron in a biological neural network may be transmitted via axons to tens of thousands of other neurons, which naturally has the characteristics of multicast transmission. However, unlike multiple independent transmission channels from the neuron axon point to the multipoint in the biological neural network, the artificial impulse neural network (such as mesh/torus topology) with different topology architecture also needs to carefully design a transmission routing scheme. The SpiNNaker system developed by manchester university, united kingdom and the TrueNorth chip developed by IBM corporation, usa are two typical examples of pulsed neural network implementations. SpiNNaker propagates by multicast mode of source address, router on its node adopts preset route table to make route forwarding, which not only needs to make route in advance, but also needs not small storage space of route table on router. True north uses the propagation of destination addresses, requiring the issuance of tens of thousands of packets per pulse per neuron emulation, and the local preservation of a corresponding number of destination addresses.
Studies have shown that the probability of a link between biological neurons decreases exponentially with increasing distance between them. In other words, the interconnection between neurons in a biological neural network has a regional characteristic that each neuron is tightly connected to its peripheral neurons, while the connection to neurons at a distance is sparse. By combining the characteristics, the scheme of the application considers designing a simple and effective multicast routing method, namely a routing method which not only prevents the repeated multicast forwarding of the loop, but also reduces the forwarding probability along with the forwarding times.
Chinese patent CN112673602a discloses a method and apparatus for avoiding broadcast storm, which judges whether to discard broadcast message according to time and frequency, and can avoid broadcast storm without changing network structure between routes and without changing broadcast packet transferred between routes. However, in the brain-like calculation scenario, a large amount of storage space is occupied for each pulse storage time and number of times, and the method cannot cope with the problems of long pulse waiting time and the like caused by the problems of congestion and the like.
Chinese patent CN107567066a discloses a fasts routing protocol based on an adaptive probability forwarding policy, which is combined with the number N of neighbors of a previous hop node to determine the probability P of forwarding a routing request packet, so that the problem of broadcast storm in the fasts network under the condition of dense nodes can be effectively suppressed by the adaptive probability forwarding policy. However, in the brain-like computing field, the number of pulses is a key indicator, and the probability forwarding inevitably causes problems such as repetition and loop-back.
The application provides a simple and effective multicast routing method capable of effectively reducing the implementation complexity of a router in a pulse neural network and reducing the time period of effective transmission of neuron pulses.
Disclosure of Invention
The technical problem to be solved by the application is to provide the impulse neural network multicast router and the method which can effectively reduce the implementation complexity of the router in the impulse neural network and simultaneously reduce the time period of effective transmission of the neuron impulse.
In order to solve the technical problems, the technical scheme provided by the application is as follows: a pulse neural network multicast router and a method thereof, wherein the router comprises an input buffer group, a switching array, an output buffer group, an arbitration control unit, two loop-back prevention forwarding units, a switching control unit, a plurality of input/output ports and an input/output port connected with a local computing unit, wherein:
(1) The input buffer is used for buffering pulse data packets input by each port;
(2) The output buffer user caches the pulse data packet output by each port;
(3) The switching array is used for connecting channels input to the output;
(4) The arbitration control unit receives the locally generated pulse data packet and the pulse data packet in each input buffer, judges the sequence of route calculation processing, and simultaneously judges whether one of the destinations of each input pulse data packet is a local calculation unit or not, and if so, the pulse data packet is simultaneously output to the local calculation unit through a local port;
(5) The anti-loop forwarding unit is used for judging whether a certain data packet is a loop-back data packet which appears in a life cycle, if so, discarding the data packet, otherwise, forwarding the data packet;
(6) And the switching control unit determines an output port to be connected according to the input port of the pulse data packet and the judgment result of the loopback prevention forwarding unit, and performs switching forwarding.
The corresponding routing method adopts a multicast transmission mode of multi-output port forwarding, and meanwhile, each router judges whether the data packet is the data packet which has been forwarded recently, so as to prevent the data packet from being forwarded repeatedly in a loop, and reduce the data congestion on the impulse neural network channel.
As an improvement, one implementation scheme of the loop-back prevention forwarding unit is shown in fig. 5, and mainly comprises an address storage unit group (L), a comparator (L), address repetition decision logic, an input address temporary storage unit and a storage control module, wherein the unit is provided with an input data packet source address, a centralized synchronous zero clearing signal input signal and an address repetition indication signal output signal. Wherein:
(1) The address storage unit is used for storing the source address of the pulse data packet forwarded by the router recently so as to compare the address of the latest input data packet;
(2) The comparator is used for comparing whether the numerical value in the address storage unit is the same as the numerical value in the input address temporary storage unit. If the signals are the same, a valid signal is given;
(3) The address repetition judgment logic adopts OR logic and is used for judging the output results of all the comparator and outputting an address repetition indication signal;
(4) The input address temporary storage unit is used for temporarily storing the source address of the input data packet to be analyzed and processed;
(5) The storage control module is used for managing and controlling the address storage unit group. If the address repetition indication signal is invalid, it is indicated that the data packet is a new data packet, and the source address in the input address temporary storage unit is stored in the address storage unit at an appropriate position. And if the centralized synchronous zero clearing signal input to the storage control module is valid, indicating that the life cycle of the round of the data packet is expired, performing centralized zero clearing on the data in the address storage unit.
The above-mentioned loop-back prevention forwarding unit is suitable for the situation of having a full-network synchronous clear signal, and another implementation scheme adopts a distributed clear mode, as shown in fig. 6. The most main change is that centralized synchronous zero clearing signal input is cancelled, and a survival count part is added to the address storage unit, wherein the survival count value is subjected to a count-down operation at a certain frequency under the control of the storage control module, and when the count value is 0, the storage control module carries out zero clearing operation on the corresponding address storage unit. If the comparison and operation of the source address of the input data packet finally outputs an invalid signal, the storage control module stores the source address in the input address temporary storage unit into a proper position in the address storage unit, calculates a survival count preset initial value according to the forwarding frequency field value N in the data packet, and stores the survival count preset initial value into a survival count part of the corresponding address storage unit. For example, one possible preset initial value of the survival count may be represented as C live =(N MAX –N)*C 0 Wherein N is MAX Maximum forwarding times set for system, C 0 For each forwarding a time count is required.
If based on the maximum number of system forwarding times N MAX To calculate the life cycle of the data packet, it may result in that the source address in the address storage unit needs to be stored for a long time, and thus the number L of address storage unit groups is larger. To solve this problem, a fixed, smaller allowable threshold N of forwarding times may be employed d To calculate a preset initial value (e.g., C live =N d C 0 ) At the same time, a time stamp insertion and timeout detection unit is added to prevent re-initiation of loop forwarding flow after congestion of the data packet, as shown in fig. 7. The timestamp inserting module and the timeout detecting module are processed as follows,
(1) When the input data packet is stored in the input buffer, a current time stamp (for example, the time counter value of the current node) is added, and the specific format is shown in fig. 8;
(2) The time stamp inserting and overtime detecting unit circularly checks the difference value between the time stamp in the input buffer group and the output buffer group and the current time count value, if the difference value is larger than a threshold value C thdisc (here C thdisc Requiring less than C live ) The data packets in the corresponding buffer/buffer are discarded.
The other one of the loop-back prevention forwarding units includes an address storage unit group, a comparator group, an address repetition decision logic, an input data packet temporary storage unit, and a storage control module, wherein the address storage unit is used for storing the source address of the pulse data packet recently forwarded by the router, comparing the address of the latest input data packet, the address storage unit is added with a survival count value part, the survival count initial preset value is a function of the forwarding times of the input data packet, the survival count initial preset value is set to a fixed constant value for all the input data packets, regardless of the forwarding times, the comparator is used for comparing whether the value in the address storage unit is the same as the source address value in the input data packet, if so, a valid indication signal is given, the address repetition decision logic adopts OR logic and is used for deciding the output result of all the comparator and outputting the address repetition indication signal, the input data packet temporary storage unit is used for temporarily storing the source address and the forwarding times of the input data packet to be analyzed, and the storage control module is used for managing and controlling the storage unit group. If the input address repetition indication signal is invalid, the data packet is a new data packet, the source address in the input address temporary storage unit is stored in a proper position in the address storage unit, and a survival count preset initial value is calculated according to the forwarding frequency field value N in the data packet and is stored in a survival count part of the corresponding address storage unit. The storage control module controls the survival count value in the address storage unit to perform count-down operation at a certain frequency, and when the count value becomes 0, the corresponding address storage unit is subjected to zero clearing operation.
As an improvement, the address storage unit group adopts a content addressable memory CAM, the storage of the survival count value adopts a common random access memory RAM, the CAM memory directly compares the source address of the input data packet with the stored forwarded source address, if the CAM has the same stored source address as the input source address, a selected signal and a storage unit address are output, otherwise, the selected signal is invalid, and the selected signal is output as an address repetition indication signal.
As an improvement, the router has a function of discarding the data packet overtime, and comprises a time stamp inserting module and a timeout detecting module, wherein when the input data packet is stored in the input buffer, the time stamp inserting module adds a current time stamp part behind the data packet; the overtime detection module circularly detects the difference value between the time stamp of the data packet in the input buffer group and the output buffer group and the current time count value, and if the difference value is larger than a threshold value, the data packet in the corresponding buffer/buffer is discarded, and the overtime threshold value is required to be smaller than a preset initial value of survival count.
As an improvement, the switching control unit is a probability switching control unit, and each output port to be forwarded next is selected by adopting a decremental probability according to the forwarding times, and the probability that the output port is selected to be forwarded is smaller as the distance from the source node is farther and the forwarding times are larger. This scheme is applicable to the router structures of fig. 4 and 7, and fig. 7 is taken as an example, and the router composition is shown in fig. 9.
The probability switching control unit is constructed as shown in fig. 10, and comprises a forwarding probability and threshold calculation module, a pseudo random code generator set (M), a threshold comparison decision set (M), a switching array control module, an input data packet forwarding frequency and an address repetition indication signal input signal, and a group of switching array control signal output signals. Wherein:
(1) The forwarding probability and threshold calculation module calculates the forwarding probability of each output port according to the input current data packet forwarding times N and a set probability function, calculates a corresponding probability comparison threshold value according to the forwarding probability, and provides the probability comparison threshold value for a comparison decision device to decide;
(2) The pseudo-random code generator group generates M numbers with random probability attributes, and the M numbers are provided for a comparison decision device to carry out comparison decision with a threshold;
(3) The comparison decision device compares the number randomly generated by the pseudo-random code generator with the forwarding probability and the threshold value generated by the threshold technology module, and decides whether to forward the number to the corresponding output port; if the input address repetition indication signal is valid, the comparison decision device outputs a forwarding invalidation indication;
(4) And the switching array control module performs switching control on the switching array of the router according to the forwarding indication signal output by the comparison decision device.
Compared with the prior art, the application has the advantages that: the technical scheme of the application can effectively reduce the implementation complexity of the router in the impulse neural network, and simultaneously provides a simple and effective multicast routing method to reduce the time period of effective transmission of the neuron impulse.
Drawings
Fig. 1 is a schematic diagram of a pulse neural network multicast router and a method for multicast transmission of data packets in the pulse neural network according to the present application.
Fig. 2 is a diagram of the internal and port connection of a pulse neural network multicast router and method according to the present application, in which (a) the nodes form a relationship diagram, and (b) the router multi-port forwarding is schematically shown.
Fig. 3 is a schematic structural diagram of a basic frame structure of a pulse packet of the pulse neural network multicast router and the method according to the present application.
Fig. 4 is a basic block diagram of a pulse neural network multicast router and a method thereof according to the present application.
Fig. 5 is a functional block diagram of a pulse neural network multicast router and method of the present application with a synchronous zero clearing anti-loop-back forwarding unit.
Fig. 6 is a functional block diagram of a distributed zero clearing loopback prevention forwarding unit of a pulsed neural network multicast router and method according to the present application.
Fig. 7 is a block diagram of a multicast router with loop-back forwarding prevention and timeout discard functions according to the present application.
Fig. 8 is a packet buffer format within a pulsed neural network multicast router and method of the present application for time stamping.
Fig. 9 is a block diagram of a multicast router and method for adding probability switching control functions to a pulsed neural network multicast router according to the present application.
Fig. 10 is a functional block diagram of a pulsed neural network multicast router and method probability exchange control unit according to the present application.
Fig. 11 is a block diagram of a pulse neural network multicast router and method of the present application based on a CAM memory anti-loop-back forwarding unit.
Fig. 12 is a diagram of a pulsed neural network multicast router and method 8-order m-sequence pseudorandom code generator of the application.
Fig. 13 is a schematic diagram of a pulsed neural network multicast router and method forwarding probability curve setup according to the present application.
Detailed Description
Examples
Referring to fig. 1 to 13, a specific embodiment of the present application is given based on the router composition structure of fig. 9, where the input buffer, the switch array, and the output buffer are the same as those of a conventional router, and the arbitration control unit uses a simple first-in first-out processing manner to sequentially process the data packets input to each input port and buffered in the input buffer, and if there is a pulse data packet generated by the local calculation unit, the pulse data packet is processed first.
The time stamp inserting module and the overtime detecting module adopt an 8-bit adding counter as a time detecting reference component, and the node clock drives the counter after proper frequency division. Timeout detection threshold C thdisc Set to 3C 0 ,C 0 For each forwarding a time count is required.
The anti-loop-back forwarding unit is shown in fig. 11. Wherein the set of address memory cells is constituted by a special memory, i.e. a content addressable memory CAM. CAM memory stores the input source address and the stored forwarded source addressComparing, if the same source address exists, the CAM outputs a selected signal and the address of the memory cell; otherwise the selected signal is not valid. The selected signal is output as an address repetition indication signal and is also input into the memory control module to timely store the source address and the forwarding times of the new input data packet. The survival counting part adopts a common RAM memory, and the preset initial value of the survival counting adopts a fixed value C live Here C live =N d C 0 ,N d For a smaller number of forwarding times, a threshold value (here N d Set to 5), C 0 For each forwarding a time count is required.
The probability exchange control unit still adopts the structure shown in fig. 10. Wherein the pseudo-random code generator adopts an 8-order m-sequence pseudo-random code generator as shown in figure 12, and the generator polynomial is x 8 +x 4 +x 3 +x+1, generating 255 groups of 8-bit values with uniform probability, and the value range is m=1 to 255. The forwarding probability curve is set as shown in figure 13,
(1) When the number of forwarding times is 0 to 10, the forwarding probability is set to p=1.0;
(2) When the number of times of forwarding is 11-50, the forwarding probability is a monotonically decreasing straight line, which can be expressed as p=1- (N-10)/40;
(3) When the number of forwarding times is greater than 50, the forwarding probability is set to p=0.0.
Correspondingly, the calculation formula of the comparison threshold is as follows: m is m 0 =255*p。
The decision logic of the comparison decision device is as follows:
(1)m<m 0 when the forwarding instruction is output 1, the forwarding of the corresponding output port is effective;
(2)m≥m 0 and when the forwarding instruction outputs 0, the corresponding output port does not forward.
The application and its embodiments have been described above with no limitation, and the actual construction is not limited to the embodiments of the application as shown in the drawings. In summary, if one of ordinary skill in the art is informed by this disclosure, a structural manner and an embodiment similar to the technical solution should not be creatively devised without departing from the gist of the present application.

Claims (5)

1. A pulse neural network multicast router and a method thereof are characterized in that: the router comprises an input buffer group, a switching array, an output buffer group, an arbitration control unit, two loop-back prevention forwarding units, a switching control unit, a plurality of input/output ports and an input/output port connected with a local computing unit, wherein the router adopts a multicast forwarding mode, namely a pulse data packet input by each port is respectively forwarded to other ports, if the pulse data packet is generated by the computing unit of the node, the pulse data packet is sent to all ports, the basic frame structure of the pulse data packet comprises a pulse source address SID, a data load PL and forwarding times N, and when the pulse data packet is sent from an initial node, the forwarding times N=0; the number of times of forwarding field in the pulse data packet is increased by 1 every time the pulse data packet is forwarded by a router node, the loop-back prevention forwarding unit judges whether the input pulse data packet is a data packet which has been forwarded recently, and decides whether to discard the input pulse data packet so as to prevent the data packet from being forwarded repeatedly in a loop-back mode, and the arbitration control unit judges the route calculation processing sequence of the pulse data packet generated by the local calculation unit and the pulse data packet in each input buffer; judging whether one of the destinations of each input pulse data packet is a local calculation unit, if so, outputting the data packet to the local calculation unit at the same time, and determining an output port to be connected by the switching control unit according to the input port of the pulse data packet and the judgment result of the loopback prevention forwarding unit to perform switching forwarding;
the device comprises a loop-back prevention forwarding unit, a data processing unit and a storage control module, wherein the loop-back prevention forwarding unit comprises an address storage unit group, a comparator group, address repetition judgment logic, an input address temporary storage unit and a storage control module, the input data packet source address and a centralized synchronous zero clearing signal input signal are input, the address storage unit is used for storing a pulse data packet source address which is recently forwarded through a router so as to compare the address of the latest input data packet, the comparator is used for comparing whether the numerical value in the address storage unit is the same as the numerical value in the input address temporary storage unit or not, if so, a valid indication signal is given, the address repetition judgment logic adopts OR logic and is used for judging the output results of all comparators and outputting the address repetition indication signal, the input address temporary storage unit is used for temporarily storing the input data packet source address to be analyzed and the storage control module is used for managing and controlling the address storage unit group; if the address repetition indication signal is invalid, the data packet is a new data packet, and the source address in the input address temporary storage unit is stored in a proper position in the address storage unit; and if the centralized synchronous zero clearing signal input to the storage control module is valid, indicating that the life cycle of the round of the data packet is expired, performing centralized zero clearing on the data in the address storage unit.
2. The pulsed neural network multicast router and method of claim 1, wherein: the other one of the loop-back prevention forwarding units comprises an address storage unit group, a comparator group, address repetition decision logic, an input data packet temporary storage unit and a storage control module, wherein the comparator group is used for comparing whether the value in the address storage unit is the same as the value of the source address in the input data packet or not, if so, a valid indication signal is given, the address repetition decision logic is used for judging the output result of all comparators and outputting address repetition indication signals, the input data packet temporary storage unit is used for temporarily storing the source address and the forwarding times of the input data packet to be analyzed, a survival count value part is added to the address storage unit, the survival count initial preset value is a function of the forwarding times of the input data packet, the survival count initial value is set to be a fixed constant value for all the input data packet, the comparison and the comparator is used for comparing whether the value in the address storage unit is the same as the value of the source address in the input data packet or not, if so, the valid indication signal is given, the address repetition decision logic is used for judging the output result of all comparators, and outputting the address repetition indication signals, the input data packet temporary storage unit is used for temporarily storing the source address and the forwarding times of the input data packet to be analyzed, and the storage control module is used for managing and controlling the storage unit group; if the input address repetition indication signal is invalid, the data packet is a new data packet, the source address in the input address temporary storage unit is stored in a proper position in the address storage unit, and meanwhile, a survival count preset initial value is calculated according to a forwarding frequency field value N in the data packet and is stored in a survival count part of the corresponding address storage unit; the storage control module controls the survival count value in the address storage unit to perform count-down operation at a certain frequency, and when the count value becomes 0, the corresponding address storage unit is subjected to zero clearing operation.
3. The pulsed neural network multicast router and method of claim 2, wherein: the address storage unit group adopts a content addressable memory CAM, the storage of the survival count value adopts a common random access memory RAM, the CAM directly compares the source address of the input data packet with the stored forwarded source address, if the CAM has the same stored source address as the input source address, a selected signal and a storage unit address are output, otherwise, the selected signal is invalid, and the selected signal is output as an address repetition indication signal.
4. A pulsed neural network multicast router and method according to claim 3, characterized by: the router has a function of discarding the data packet overtime, and comprises a time stamp inserting module and a overtime detecting module, wherein when the input data packet is stored in the input buffer, the time stamp inserting module adds a current time stamp part behind the data packet; the overtime detection module circularly detects the difference value between the time stamp of the data packet in the input buffer group and the output buffer group and the current time count value, and if the difference value is larger than a threshold value, the data packet in the corresponding buffer/buffer is discarded, and the overtime threshold value is required to be smaller than a preset initial value of survival count.
5. The impulse neural network multicast router and method as claimed in claim 4, wherein: the switching control unit is a probability switching control unit, the switching control unit adopts a decremental probability function to select each output port to be forwarded next, the farther the switching control unit is away from a source node and the larger the forwarding times are, the smaller the probability that the output ports are selected to be forwarded is, the probability switching control unit comprises a forwarding probability and threshold calculation module, a pseudo random code generator group, a threshold comparison decision device group, a switching array control module, an input data packet forwarding times and an address repetition indicating signal input signal, a group of switching array control signal output signals, the forwarding probability and threshold calculation module calculates the forwarding probability to each output port of a router according to the current input data packet forwarding times and a set probability function, and calculates corresponding probability comparison threshold values according to the forwarding probability values, the numbers with random probability attributes are provided for the output ports to a comparison decision device and threshold for comparison decision, the comparison decision device compares the numbers randomly generated by the pseudo random code generator with the numbers generated by the comparison probability and the threshold value generated by the threshold technology module, and decides whether the forwarding of the corresponding output data packet is carried out to the corresponding output port, if the switching of the switching array indicates that the switching control signal is invalid.
CN202111118621.6A 2021-09-24 2021-09-24 Impulse neural network multicast router and method Active CN113807511B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111118621.6A CN113807511B (en) 2021-09-24 2021-09-24 Impulse neural network multicast router and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111118621.6A CN113807511B (en) 2021-09-24 2021-09-24 Impulse neural network multicast router and method

Publications (2)

Publication Number Publication Date
CN113807511A CN113807511A (en) 2021-12-17
CN113807511B true CN113807511B (en) 2023-09-26

Family

ID=78896515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111118621.6A Active CN113807511B (en) 2021-09-24 2021-09-24 Impulse neural network multicast router and method

Country Status (1)

Country Link
CN (1) CN113807511B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070053502A (en) * 2005-11-21 2007-05-25 한국전자통신연구원 Switching method and apparatus of real-time multicast packet stream, and ethernet switching system using the same
CN105095961A (en) * 2015-07-16 2015-11-25 清华大学 Mixing system with artificial neural network and impulsive neural network
CN105469143A (en) * 2015-11-13 2016-04-06 清华大学 Network-on-chip resource mapping method based on dynamic characteristics of neural network
CN109583578A (en) * 2017-09-29 2019-04-05 英特尔公司 The overall situation and local zone time step size determination scheme for neural network
CN112468401A (en) * 2020-11-26 2021-03-09 中国人民解放军国防科技大学 Network-on-chip routing communication method for brain-like processor and network-on-chip

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070053502A (en) * 2005-11-21 2007-05-25 한국전자통신연구원 Switching method and apparatus of real-time multicast packet stream, and ethernet switching system using the same
CN105095961A (en) * 2015-07-16 2015-11-25 清华大学 Mixing system with artificial neural network and impulsive neural network
CN105469143A (en) * 2015-11-13 2016-04-06 清华大学 Network-on-chip resource mapping method based on dynamic characteristics of neural network
CN109583578A (en) * 2017-09-29 2019-04-05 英特尔公司 The overall situation and local zone time step size determination scheme for neural network
CN112468401A (en) * 2020-11-26 2021-03-09 中国人民解放军国防科技大学 Network-on-chip routing communication method for brain-like processor and network-on-chip

Also Published As

Publication number Publication date
CN113807511A (en) 2021-12-17

Similar Documents

Publication Publication Date Title
CN102273141B (en) Reduce the propagation of the message flooding in computer network
EP2605454B1 (en) Network impairment unit with bandwidth-constrained packet duplication
US20080016510A1 (en) Event-driven flow control for a very high-speed switching node
EP2573980B1 (en) Parallel traffic generator with priority flow control
Alvarez-Cuevas et al. Voice synchronization in packet switching networks
US20090196288A1 (en) Efficient Packet Replication
CN111245730B (en) Routing system and communication method of network on chip
CN113807511B (en) Impulse neural network multicast router and method
Wang et al. A knapsack-based message scheduling and drop strategy for delay-tolerant networks
Li et al. A data forwarding mechanism based on deep reinforcement learning for deterministic networks
CN115297054B (en) Information transmission method, device, terminal and storage medium
US20040260903A1 (en) Ping-pong buffer system having a buffer to store a subset of data from a data source
Kechar et al. Energy efficient cross-layer MAC protocol for wireless sensor networks
Pratama et al. Message Time-to-live based Drop Policy Under Spray and Hop Distance Routing
JP2009188623A (en) Network repeater and network repeating method
CN113812119A (en) Network node for performance measurement
Visca et al. A model for route learning in opportunistic networks
McGirr et al. Simulation of underwater sensor networks
Demianiuk et al. Telenoise: A network-noise module for in-band real-time telemetry
Visca et al. Path sampling, a robust alternative to gossiping for opportunistic network routing
Helmy et al. Systematic performance evaluation of multipoint protocols
Zhong et al. A data forwarding algorithm based on nodal activities in opportunistic networks
Schoenen et al. Closed loop credit-based flow control with internal backpressure in input and output queued switches
US20220309327A1 (en) Spiking neural network and neuron clock generating method thereof
JP2018121156A (en) Packet switch device and message exchange system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant