[go: up one dir, main page]

WO2015176289A1 - Method and device for controlling traffic of network-on-chip (noc) - Google Patents

Method and device for controlling traffic of network-on-chip (noc) Download PDF

Info

Publication number
WO2015176289A1
WO2015176289A1 PCT/CN2014/078182 CN2014078182W WO2015176289A1 WO 2015176289 A1 WO2015176289 A1 WO 2015176289A1 CN 2014078182 W CN2014078182 W CN 2014078182W WO 2015176289 A1 WO2015176289 A1 WO 2015176289A1
Authority
WO
WIPO (PCT)
Prior art keywords
noc
flow
traffic
network
change value
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.)
Ceased
Application number
PCT/CN2014/078182
Other languages
French (fr)
Chinese (zh)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201480059677.0A priority Critical patent/CN105684506B/en
Priority to PCT/CN2014/078182 priority patent/WO2015176289A1/en
Publication of WO2015176289A1 publication Critical patent/WO2015176289A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a flow control method and apparatus for an on-chip network NoC. Background technique
  • NoC Network-on-Chip
  • SoC System-on-Chip
  • CMP Chip Multi-Processors
  • NoC-based systems are better able to adapt to the globally heterogeneous, locally homogenous clocking mechanisms used in future complex multicore SoC designs.
  • the NoC architecture is mainly based on electronic and optical technologies, which are called Electrical Network-on-Chip (ENoC) and Optical Network-on-Chip (ONoC).
  • ENoC Electrical Network-on-Chip
  • ONoC Optical Network-on-Chip
  • the most suitable network structure is the packet-switched direct network, that is, each node is connected to an adjacent node through a bidirectional channel.
  • communication protocols in NoC often use a layered network protocol.
  • the NoC topology is a two-dimensional mesh geometry. Each tile has six separate NoC routers. The six routers are divided into three groups of two routers each to ensure that the router is deadlocked. The three groups of routers perform different functions, one for the network migration (Migration Network), one for the remote network access (Remote Access Network), and one for the network direct memory access (Direct Memory Access network) .
  • the embodiment of the invention provides a flow control method and device for the on-chip network NoC, which is used to solve the problem that the CMP architecture in the prior art is prone to network byte sequence traffic congestion.
  • a first aspect of the present invention provides a flow control method for an on-chip network NoC, including: using a back propagation BP neural network to predict a flow change value of a NoC in a future set time; Obtaining performance parameters of the central processing unit CPU in the NoC;
  • the method before the predicting a flow change value of the NoC in the future set time by using the back propagation BP neural network, the method further includes:
  • the training flow difference sequence is used to train to obtain the BP neural network.
  • the back propagation BP neural network is used to predict the traffic change value of the NoC in the future set time, which specifically includes:
  • the predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated.
  • the controlling the NoC according to the traffic change value and the performance parameter Current traffic including:
  • the flow upper limit value of the NoC is decreased.
  • the controlling the NoC according to the traffic change value and the performance parameter Current traffic including:
  • a flow control device for an on-chip network NoC including: a prediction module, configured to predict, by using a back propagation BP neural network, a flow change value of a NoC in a future set time;
  • An acquisition module configured to acquire a performance parameter of a central processing unit CPU in the NoC
  • a control module configured to control a current traffic of the NoC according to the traffic change value and the performance parameter.
  • the prediction module is further configured to: acquire a plurality of training network byte sequences of the NoC according to the second aspect;
  • the training flow difference sequence is used to train to obtain the BP neural network.
  • the prediction module is specifically configured to:
  • the predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated.
  • control module is specifically configured to:
  • the flow upper limit value of the NoC is decreased.
  • control module is specifically configured to:
  • a third aspect of the present invention provides a flow control apparatus for an on-chip network NoC, comprising: a memory for storing an instruction, a processor, configured to execute an instruction in the memory to perform an on-chip network as described in the first aspect NoC flow control method.
  • the flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC.
  • the embodiment of the present invention ensures that the CPU processing capability matches the NoC traffic change, achieves the control of the NoC network byte sequence traffic, improves the NoC throughput, and avoids the traffic. Congestion effect.
  • FIG. 1 is a flowchart of a NoC flow control method according to Embodiment 1 of the present invention
  • FIG. 2 is a flowchart of a NoC flow control method according to Embodiment 2 of the present invention
  • FIG. 4 is a schematic structural diagram of a NoC flow control device according to Embodiment 3 of the present invention
  • FIG. 5 is a schematic structural diagram of a NoC flow control device according to Embodiment 4 of the present invention.
  • FIG. 1 is a flowchart of a NoC flow control method according to Embodiment 1 of the present invention. Such as shown in FIG. 1, the method includes the following steps:
  • the execution body of each of the above steps may be a processor having a certain processing capability, for example, may be EM2.
  • BP neural network is a kind of multi-layer feedforward neural network. It consists of two processes: forward propagation of information and back propagation of error. From its structural point of view, the BP neural network consists of three layers: the input layer, the intermediate layer, and the output layer. The neurons in the input layer are responsible for receiving input information from the outside world and transmitting them to the neurons in the middle layer. The middle layer is the internal information processing layer, responsible for information transformation. According to the information change capability, the middle layer can be designed as a single hidden layer. Or multiple hidden layer structure; the last hidden layer is passed to the information of each neuron in the output layer.
  • the forward propagation process of learning is completed, and the information processing result is output from the output layer to the outside, and the result is obtained.
  • the error is backpropagated back to the BP neural network to adjust the weight values between the layers until the error between the output of the BP neural network and the expected output is within a predetermined range.
  • the present embodiment uses a BP neural network to predict the flow change value of the NoC in the future set time.
  • the BP neural network may be trained by using multiple network byte sequences of NoC, that is, the difference between adjacent sequence elements in each network byte sequence is input into the input layer of the BP neural network, and the layers of the BP neural network are adjusted.
  • the weight value, and the BP neural network determined by the weight value predicts the flow change value of the NoC in the future set time, that is, the flow change value from the current time to the set time.
  • the performance parameters of the Central Processing Unit (CPU) in the NoC can be obtained. Since the processing power of the CPU has a strong correlation with the traffic congestion of the NoC network byte sequence, and the change of the two does not show a significant rule with time, therefore, in order to make the processing power of the CPU and the network byte sequence of NoC
  • the traffic matching can obtain the performance parameters of the CPU, such as its current utilization rate, and then control the current traffic of the NoC according to the predicted traffic change value within the set time and the current performance parameter of the CPU.
  • the flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC.
  • the CPU processing capability and the NoC traffic change are matched, the network byte sequence traffic of the NoC is controlled, the NoC throughput is improved, and traffic congestion is avoided. Effect.
  • FIG. 2 is a flowchart of a NoC flow control method according to Embodiment 2 of the present invention.
  • the execution body of each step in this embodiment is a processor with certain processing capability. For example, it may be EM2o. As shown in FIG. 2, the method includes the following steps:
  • step S 100 in order to accurately predict the flow of NoC using the BP neural network, the BP neural network can be trained first, that is, the weight value between the layers of the BP neural network is determined.
  • the training process can be divided into the following three steps:
  • NoC's network traffic byte sequence has a certain relationship, that is, there is a certain relationship between the current traffic and the traffic of several sampling intervals in the past, BP neural network can be trained with multiple training network byte sequences of NoC. .
  • the above-mentioned multiple training network byte sequences can be obtained by using the NoC input output (Input Output, referred to as 10) sampling.
  • the actual traffic of the NoC is relatively large, it can be predicted by the absolute error method. That is, multiple training network byte sequences of NoC can be obtained first, and then adjacent sequences in each training network byte sequence are calculated. The difference between the elements obtains a training traffic difference sequence corresponding to each training network byte sequence.
  • the BP neural network can be trained by using the training traffic difference sequence to obtain a BP neural network with stable weight values between layers.
  • the S20K uses BP neural network to predict the flow change value of NoC in the future set time. After the BP neural network training is completed, that is, after the weight values between the layers are determined, the BP neural network can be used to predict the flow change value of the NoC in the future set time.
  • the predicted network byte sequence may be obtained by sampling from the 10th end of the NoC according to the set time and the set correlation interval.
  • the setting correlation interval is the correlation of the estimated NoC network byte sequence, and can be determined according to the actual NoC traffic situation.
  • the set time can take the next sampling interval of the current sampling interval, etc. It is also determined based on the actual NoC flow rate.
  • the difference between adjacent sequence elements in the predicted network byte sequence can be calculated to obtain a sequence of predicted traffic differences. That is to say, the two adjacent items of the predicted network byte sequence are subtracted to obtain the difference between the next sampling interval and the previous sampling interval, and the new sequence composed of the difference is the predicted flow difference difference sequence.
  • predicted flow difference difference sequence can be used as an input of the BP neural network, and then the output of the BP neural network is used as the flow change value.
  • the performance parameter is used as a performance indicator for measuring the current processing capability of the CPU.
  • it may be the current utilization rate of the CPU.
  • the CPU utilization rate is too high, such as greater than 90%, it may lead to suspended animation. If the NoC traffic increases in the future set time, the processor core (Core) cannot be processed with other Cores. The communication mechanism is easy to cause partial failure of the system; if the utilization rate of the CPU is too low, such as less than 40%, it means that the resources of the Core are underutilized. If the traffic of the NoC increases in the future set time, then As a result, the delayed response of the inter-core communication is intensified, which may result in a decrease in local performance of the system.
  • the current flow of the NoC is controlled according to the above two, Dynamically adaptively adjust the current flow of the NoC before the adverse situation occurs, ensuring that the Core is in a reasonable performance range, avoiding before The occurrence of the situation.
  • a strategy is to control the traffic threshold of the NoC so as not to exceed the processing capability of the CPU without changing the performance parameter of the CPU; another strategy is not Under the premise of changing the NoC traffic threshold, the performance parameters of the CPU are adjusted to better match the processing power of the CPU with the traffic of the NoC in the future to improve the performance of the CPU.
  • the policy refers to determining that the current processing capability of the CPU has reached a bottleneck through the performance parameter, and the predicted traffic change value is greater than zero, that is, the future.
  • the flow rate of the NoC will increase. Then, the flow of the NoC can be reversely controlled.
  • the flow rate of the NoC is limited by lowering the flow rate upper limit value of the NoC, thereby avoiding the situation where the NoC flow rate increases in the future and the CPU cannot handle the flow.
  • the traffic of the NoC will not increase in the future, it may not operate.
  • the CPU scheduling parameter is adjusted to match the processing capability of the CPU with the flow change value.
  • the scheduling parameter can be the voltage of the CPU, or the primary frequency, or the primary frequency and voltage.
  • the strategy is that when the predicted traffic change value is greater than zero, that is, the traffic of the NoC will increase in the future, and the CPU's processing capability does not reach the bottleneck, that is, the core processing capacity is not exceeded, the CPU can be adjusted.
  • the voltage, or the main frequency, or the main frequency and voltage adaptively adjust the performance or power consumption of the Core, enabling the CPU's processing power to adapt to the traffic growth in the future.
  • Simultaneous Multi Threading can also be used to balance the relationship between CPU processing power and NoC traffic to improve CPU performance.
  • the following takes the architecture of EM2 as an example to describe the above training process and the control process of NoC traffic.
  • the flow jitter of the NoC is relatively large, so it can be measured by the absolute error method.
  • the difference between the two items before and after the training network byte training sequence can be calculated to form a new sequence, that is, the training traffic difference sequence, and then the traffic prediction difference sequence is subjected to traffic prediction: where, The value of the flow change between the kth sampling interval and the k+1th sampling interval.
  • Training network byte sequence of BP neural network After obtaining the above training flow difference sequence, it can be used to train the BP neural network. Since the training BP neural network requires a large number of samples, when k in the formula (3) takes different values, multiple trainings can be obtained. Training network byte sequence of BP neural network.
  • FIG. 3 is a schematic diagram of the NoC flow control based on EM2 provided in the second embodiment.
  • routers 1 ⁇ 6 are three groups of routers in the background art. Specifically, routers 1 and 2 are used for network migration, routers 3 and 4 are used for remote network access, and routers 5 and Router 6 is used for network direct memory access, and the connection arrows of the above six routers represent network data forwarded thereon.
  • the processor core 7 represents the CPU corresponding to the NoC.
  • the BP neural network is divided into three layers, an input layer 8, an intermediate layer 9, and an output layer 10, which are indicated by dashed boxes in Fig. 3.
  • the middle layer that is, the hidden layer, has three neurons, namely the black squares in Figure 3, which receive six inputs from the input layer and pass three outputs to the output layer. These three outputs are For the three traffic change values, the three traffic change values correspond to the NoC traffic change values corresponding to the three groups of routers for implementing three different functions.
  • the intermediate layer may be composed of multiple layers, and is not necessarily a layer.
  • the weight value representing the neuron j from the m-1th layer to the mth layer neuron i assuming the kth input of the m-1th layer i
  • g m represents its transfer function, That is, the transfer function of the mth input to the output represents the corresponding output.
  • it means the weight value from the first neuron of the input layer to the first neuron of the middle layer, indicating the first neuron from the middle layer to the output layer.
  • the output 3 ⁇ 4 has 1 neuron, the black square in Figure 3, which receives 3 flow change values from the middle layer, ie, according to these 3
  • the flow change value is combined to obtain the flow change value of the entire NoC in the future set time 3 ⁇ 4+1 , and then compared with the actual ⁇ 3 ⁇ 4+1 of the next sampling interval. If the error is not within the preset range, continue with the next one. Train the network byte sequence to train the BP network until the error falls within the preset range.
  • the weight value of the BP neural network is determined.
  • the predicted network byte sequence can be input into the BP neural network, and the flow change value of the NoC in the future set time is predicted, and The current flow of the NoC is controlled based on the predicted result and the performance parameters of the CPU.
  • the output layer of the BP neural network may be used to output the predicted flow change value of the NoC in the future set time, and then after obtaining the performance parameter of the CPU according to the description of steps S202 to S203. And synthesizing the performance parameters of the CPU and the predicted flow change value, and controlling the current flow of the NoC; of course, the performance parameter of the CPU may also be input into the output layer of the BP neural network, and the output layer completes the time set in the future.
  • the prediction of the flow change value and the control of the current flow of the NoC which is shown in Fig. 3, is the second mode described above.
  • the flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC.
  • the CPU processing capability and the NoC traffic change are matched, and the control is achieved.
  • NoC's network byte sequence traffic improves the throughput of NoC and avoids traffic congestion.
  • 4 is a schematic structural diagram of a NoC flow control device according to Embodiment 3 of the present invention. As shown in FIG. 4, the flow control device 1 includes: a prediction module 10, an acquisition module 11, and a control module 12.
  • the prediction module 10 is configured to use a back propagation BP neural network to predict a flow change value of the NoC in a future set time; the obtaining module 11 is configured to acquire a performance parameter of the central processing unit CPU in the NoC; and the control module 12 is configured to The flow change value and performance parameters control the current flow of the NoC.
  • the prediction module 10 is further configured to: acquire a plurality of training network byte sequences of the NoC; calculate a difference between adjacent sequence elements in each training network byte sequence, and obtain training corresponding to each training network byte sequence. Sequence of traffic difference values; training is performed using training traffic difference sequence to obtain BP neural network.
  • the prediction module 10 is specifically configured to: obtain a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval; calculate between the adjacent sequence elements in the predicted network byte sequence The difference is obtained, and the predicted flow difference difference sequence is obtained; the predicted flow difference difference sequence is used as the input of the BP neural network, and the flow change value is calculated.
  • control module 12 is specifically configured to: determine whether the performance parameter exceeds the first preset threshold; if the first preset threshold is exceeded, and the flow change value is greater than zero, the upper limit value of the NoC is decreased.
  • control module 12 is specifically configured to: determine whether the flow change value is greater than zero; if greater than zero, and the performance parameter is lower than the second preset threshold, adjust the scheduling parameter of the CPU to change the processing capability and flow of the CPU
  • FIG. 5 is a schematic structural diagram of a NoC flow control device according to Embodiment 4 of the present invention. As shown in FIG. 5, the flow control device 2 includes: a memory 20 and a processor 21.
  • the memory 20 is configured to store instructions
  • the processor 21 is configured to execute the instructions in the memory 20 to execute the NoC flow control method as described in any of the first embodiment and the second embodiment.
  • the flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC.
  • the CPU processing capability and the NoC traffic change are matched, the network byte sequence traffic of the NoC is controlled, the NoC throughput is improved, and traffic congestion is avoided. Effect.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are only schematic.
  • the division of the unit or module is only a logical function division.
  • there may be another division manner for example, multiple units or modules may be used. Combined or can be integrated into another system, or some features can be ignored, or not executed.
  • the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or module, and may be in electrical, mechanical or other form.
  • the modules described as separate components may or may not be physically separate.
  • the components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the objectives of the solution of the embodiment.
  • the aforementioned program can be stored in a computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Provided are a method and device for controlling the traffic of a network-on-chip (NoC). The method comprises: predicting a traffic change value of an NoC within a future set time using a back propagation (BP) neural network; acquiring a performance parameter of a central processing unit (CPU) in the NoC; and controlling the current traffic of the NoC according to the traffic change value and the performance parameter. By means of the technical solution in the embodiments of the present invention, it can be guaranteed that the processing capability of a CPU matches the traffic change of an NoC, thereby achieving the effects of controlling the network byte sequence traffic of the NoC and avoiding the traffic congestion.

Description

片上网络 NoC的流量控制方法及装置  On-chip network NoC flow control method and device

技术领域 Technical field

本发明涉及通信技术领域, 尤其涉及一种片上网络 NoC 的流量控制 方法及装置。 背景技术  The present invention relates to the field of communications technologies, and in particular, to a flow control method and apparatus for an on-chip network NoC. Background technique

片上网络(Network-on-Chip, 简称 NoC )作为一种片上通信网络, 其 是可以应用在片上系统 (System-on-Chip, 简称 SoC ) 上, 如单芯片多处 理器 (Chip Multi-Processors , 简称 CMP ) 等。 基于 NoC的系统能更好地 适应在未来复杂多核 SoC设计中使用的全局异歩、 局部同歩的时钟机制。 NoC 构架主要基于电子及光学技术, 分别称为片上电网络 (Electrical Network-on-Chip, 简称 ENoC ) 及片上光网络 ( Optical Network-on-Chip, 简称 ONoC ) 。 在 NoC中, 普遍使用也是最适合的网络结构为包交换的直 接网络, 即每个节点通过双向通道连接到相邻的节点。 此外, 为了便于扩 展, NoC中的通信协议往往采用分层的网络协议。  Network-on-Chip (NoC) is an on-chip communication network that can be applied to System-on-Chip (SoC), such as Chip Multi-Processors. Referred to as CMP) and so on. NoC-based systems are better able to adapt to the globally heterogeneous, locally homogenous clocking mechanisms used in future complex multicore SoC designs. The NoC architecture is mainly based on electronic and optical technologies, which are called Electrical Network-on-Chip (ENoC) and Optical Network-on-Chip (ONoC). In NoC, the most suitable network structure is the packet-switched direct network, that is, each node is connected to an adjacent node through a bidirectional channel. In addition, in order to facilitate the expansion, communication protocols in NoC often use a layered network protocol.

以迁移执行机器 ( Migration Execution Machine, 简称 EM2 )为例, 其 NoC拓扑为两维网格几何结构。 每片 (Tile)拥有 6个单独的 NoC路由器 ( Router) , 该 6个路由器分为三组, 每组两个路由器, 以确保避免路由 器的死锁。上述三组路由器执行的功能不同,一组用于网络迁移(Migration Network) , 一组用于远程网络存取 (Remote Access Network) , 还有一 组用于网络直接存储器存取 (Direct Memory Access network) 。  Take the Migration Execution Machine (EM2) as an example. The NoC topology is a two-dimensional mesh geometry. Each tile has six separate NoC routers. The six routers are divided into three groups of two routers each to ensure that the router is deadlocked. The three groups of routers perform different functions, one for the network migration (Migration Network), one for the remote network access (Remote Access Network), and one for the network direct memory access (Direct Memory Access network) .

然而, 现有 CMP架构容易出现网络字节序列流量拥塞的情况。 发明内容  However, the existing CMP architecture is prone to traffic congestion of network byte sequences. Summary of the invention

本发明实施例提供一种片上网络 NoC 的流量控制方法及装置, 用以 解决现有技术中 CMP架构容易出现网络字节序列流量拥塞的问题。  The embodiment of the invention provides a flow control method and device for the on-chip network NoC, which is used to solve the problem that the CMP architecture in the prior art is prone to network byte sequence traffic congestion.

本发明的第一方面, 提供一种片上网络 NoC的流量控制方法, 包括: 采用反向传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 获取所述 NoC中的中央处理单元 CPU的性能参数; A first aspect of the present invention provides a flow control method for an on-chip network NoC, including: using a back propagation BP neural network to predict a flow change value of a NoC in a future set time; Obtaining performance parameters of the central processing unit CPU in the NoC;

根据所述流量变化值和所述性能参数, 控制所述 NoC的当前流量。 在第一种可能的实现方式中, 根据第一方面, 所述采用反向传播 BP 神经网络预测 NoC未来设定时间内的流量变化值之前, 还包括:  Controlling the current flow rate of the NoC according to the flow change value and the performance parameter. In a first possible implementation manner, according to the first aspect, before the predicting a flow change value of the NoC in the future set time by using the back propagation BP neural network, the method further includes:

获取所述 NoC的多个训练网络字节序列;  Obtaining a plurality of training network byte sequences of the NoC;

计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训练网 络字节序列对应的训练流量差值序列;  Calculating a difference between adjacent sequence elements in each training network byte sequence, and obtaining a training traffic difference sequence corresponding to each training network byte sequence;

采用所述训练流量差值序列进行训练, 得到所述 BP神经网络。  The training flow difference sequence is used to train to obtain the BP neural network.

在第二种可能的实现方式中, 结合第一方面和第一种可能的实现方 式,所述采用反向传播 BP神经网络预测 NoC未来设定时间内的流量变化 值, 具体包括:  In a second possible implementation, in combination with the first aspect and the first possible implementation manner, the back propagation BP neural network is used to predict the traffic change value of the NoC in the future set time, which specifically includes:

根据所述设定时间和设定相关间隔, 从所述 NoC的输入输出 10端采 样获取预测网络字节序列;  Obtaining a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval;

计算所述预测网络字节序列中相邻序列元素之间的差值, 得到预测流 量差值序列;  Calculating a difference between adjacent sequence elements in the predicted network byte sequence to obtain a predicted flow difference difference sequence;

将所述预测流量差值序列作为所述 BP神经网络的输入, 计算得到所 述流量变化值。  The predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated.

在第三种可能的实现方式中, 结合第一方面、 第一种可能的实现方式 和第二种可能的实现方式, 所述根据所述流量变化值和所述性能参数, 控 制所述 NoC的当前流量, 具体包括:  In a third possible implementation manner, in combination with the first aspect, the first possible implementation manner, and the second possible implementation manner, the controlling the NoC according to the traffic change value and the performance parameter Current traffic, including:

判断所述性能参数是否超过第一预设阈值;  Determining whether the performance parameter exceeds a first preset threshold;

若超过所述第一预设阈值, 且所述流量变化值大于零, 则降低所述 NoC的流量上限值。  If the first preset threshold is exceeded, and the flow change value is greater than zero, the flow upper limit value of the NoC is decreased.

在第四种可能的实现方式中, 结合第一方面、 第一种可能的实现方式 和第二种可能的实现方式, 所述根据所述流量变化值和所述性能参数, 控 制所述 NoC的当前流量, 具体包括:  In a fourth possible implementation, in combination with the first aspect, the first possible implementation manner, and the second possible implementation manner, the controlling the NoC according to the traffic change value and the performance parameter Current traffic, including:

判断所述流量变化值是否大于零;  Determining whether the flow change value is greater than zero;

若大于零, 且所述性能参数低于第二预设阈值, 则调整所述 CPU 的 调度参数以使所述 CPU 的处理能力与所述流量变化值相匹配, 所述调度 参数包括所述 CPU的电压和 /或主频。 本发明的第二方面, 提供一种片上网络 NoC的流量控制装置, 包括: 预测模块,用于采用反向传播 BP神经网络预测 NoC未来设定时间内 的流量变化值; If the performance parameter is greater than zero, and the performance parameter is lower than the second preset threshold, adjusting the scheduling parameter of the CPU to match the processing capability of the CPU with the traffic change value, where the scheduling parameter includes the CPU Voltage and / or frequency. According to a second aspect of the present invention, a flow control device for an on-chip network NoC is provided, including: a prediction module, configured to predict, by using a back propagation BP neural network, a flow change value of a NoC in a future set time;

获取模块, 用于获取所述 NoC中的中央处理单元 CPU的性能参数; 控制模块, 用于根据所述流量变化值和所述性能参数, 控制所述 NoC 的当前流量。  An acquisition module, configured to acquire a performance parameter of a central processing unit CPU in the NoC, and a control module, configured to control a current traffic of the NoC according to the traffic change value and the performance parameter.

在第一种可能的实现方式中, 根据第二方面, 所述预测模块还用于: 获取所述 NoC的多个训练网络字节序列;  In a first possible implementation, the prediction module is further configured to: acquire a plurality of training network byte sequences of the NoC according to the second aspect;

计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训练网 络字节序列对应的训练流量差值序列;  Calculating a difference between adjacent sequence elements in each training network byte sequence, and obtaining a training traffic difference sequence corresponding to each training network byte sequence;

采用所述训练流量差值序列进行训练, 得到所述 BP神经网络。  The training flow difference sequence is used to train to obtain the BP neural network.

在第二种可能的实现方式中, 结合第二方面和第一种可能的实现方 式, 所述预测模块具体用于:  In a second possible implementation manner, in combination with the second aspect and the first possible implementation manner, the prediction module is specifically configured to:

根据所述设定时间和设定相关间隔, 从所述 NoC的输入输出 10端采 样获取预测网络字节序列;  Obtaining a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval;

计算所述预测网络字节序列中相邻序列元素之间的差值, 得到预测流 量差值序列;  Calculating a difference between adjacent sequence elements in the predicted network byte sequence to obtain a predicted flow difference difference sequence;

将所述预测流量差值序列作为所述 BP神经网络的输入, 计算得到所 述流量变化值。  The predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated.

在第三种可能的实现方式中, 结合第一方面、 第一种可能的实现方式 和第二种可能的实现方式, 所述控制模块具体用于:  In a third possible implementation manner, in combination with the first aspect, the first possible implementation manner, and the second possible implementation manner, the control module is specifically configured to:

判断所述性能参数是否超过第一预设阈值;  Determining whether the performance parameter exceeds a first preset threshold;

若超过所述第一预设阈值, 且所述流量变化值大于零, 则降低所述 NoC的流量上限值。  If the first preset threshold is exceeded, and the flow change value is greater than zero, the flow upper limit value of the NoC is decreased.

在第四种可能的实现方式中, 结合第一方面、 第一种可能的实现方式 和第二种可能的实现方式, 所述控制模块具体用于:  In a fourth possible implementation manner, in combination with the first aspect, the first possible implementation manner, and the second possible implementation manner, the control module is specifically configured to:

判断所述流量变化值是否大于零;  Determining whether the flow change value is greater than zero;

若大于零, 且所述性能参数低于第二预设阈值, 则调整所述 CPU 的 调度参数以使所述 CPU 的处理能力与所述流量变化值相匹配, 所述调度 参数包括所述 CPU的电压和 /或主频。 本发明的第三方面, 提供一种片上网络 NoC的流量控制装置, 包括: 存储器, 用于存储指令, 处理器, 用于运行所述存储器中的指令以执行如 第一方面所述的片上网络 NoC的流量控制方法。 If the performance parameter is greater than zero, and the performance parameter is lower than the second preset threshold, adjusting the scheduling parameter of the CPU to match the processing capability of the CPU with the traffic change value, where the scheduling parameter includes the CPU Voltage and / or frequency. A third aspect of the present invention provides a flow control apparatus for an on-chip network NoC, comprising: a memory for storing an instruction, a processor, configured to execute an instruction in the memory to perform an on-chip network as described in the first aspect NoC flow control method.

本发明实施例提供的片上网络 NoC 的流量控制方法, 首先采用反向 传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 再获取 NoC 中的中央处理单元 CPU 的性能参数, 之后根据流量变化值和性能参数, 控制 NoC的当前流量。本发明实施例通过综合考虑 CPU的性能参数和 NoC 的流量变化值, 保证了 CPU处理能力和 NoC的流量变化相匹配, 达到了 控制 NoC的网络字节序列流量, 提升 NoC的吞吐量, 避免流量拥塞的效 果。 附图说明  The flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC. By comprehensively considering the performance parameters of the CPU and the flow change value of the NoC, the embodiment of the present invention ensures that the CPU processing capability matches the NoC traffic change, achieves the control of the NoC network byte sequence traffic, improves the NoC throughput, and avoids the traffic. Congestion effect. DRAWINGS

为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对 实施例或现有技术描述中所需要使用的附图做一简单地介绍, 显而易见 地, 下面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员 来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的 附图。  In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, a brief description of the drawings used in the embodiments or the prior art description will be briefly made. Obviously, the drawings in the following description It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any inventive labor.

图 1为本发明实施例一提供的一种 NoC的流量控制方法的流程图; 图 2为本发明实施例二提供的一种 NoC的流量控制方法的流程图; 图 3为本实施例二提供的基于 EM2的 NoC流量控制示意图; 图 4为本发明实施例三提供的一种 NoC的流量控制装置的结构示意图; 图 5为本发明实施例四提供的一种 NoC的流量控制装置的结构示意图。 具体实施方式  1 is a flowchart of a NoC flow control method according to Embodiment 1 of the present invention; FIG. 2 is a flowchart of a NoC flow control method according to Embodiment 2 of the present invention; FIG. 4 is a schematic structural diagram of a NoC flow control device according to Embodiment 3 of the present invention; FIG. 5 is a schematic structural diagram of a NoC flow control device according to Embodiment 4 of the present invention; . detailed description

为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描 述, 显然,所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提 下所获得的所有其他实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. It is a partial embodiment of the invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.

图 1为本发明实施例一提供的一种 NoC的流量控制方法的流程图。 如 图 1所示, 该方法包括以下歩骤: FIG. 1 is a flowchart of a NoC flow control method according to Embodiment 1 of the present invention. Such as As shown in FIG. 1, the method includes the following steps:

5100、 采用反向传播神经网络预测 NoC 未来设定时间内的流量变化 值。  5100. Use a back propagation neural network to predict the value of the flow change of the NoC in the future set time.

5101、 获取 NoC中的中央处理单元的性能参数。  5101. Obtain performance parameters of a central processing unit in the NoC.

5102、 根据流量变化值和性能参数, 控制 NoC的当前流量。  5102. Control the current flow of the NoC according to the flow change value and the performance parameter.

上述各歩骤的执行主体可以为具备一定处理能力的处理器, 例如, 可 以是 EM2。  The execution body of each of the above steps may be a processor having a certain processing capability, for example, may be EM2.

反向传播 (Back Propagation, 简称 BP ) 神经网络是多层前馈神经网 络的一种, 它是由信息的正向传播和误差的反向传播两个过程组成。 从其 结构上来看, BP 神经网络包括输入层、 中间层和输出层三层。 输入层的 各神经元负责接收来自外界的输入信息, 并传递给中间层各神经元; 中间 层是内部信息处理层, 负责信息变换, 根据信息变化能力的需求, 中间层 可以设计为单隐层或者多隐层结构; 最后一个隐层传递到输出层各神经元 的信息, 经进一歩处理后, 完成一次学习的正向传播处理过程, 由输出层 向外界输出信息处理结果, 并将该结果与期望输出结果相比, 再将误差反 向传播回 BP神经网络以调整各层之间的权重值, 直至 BP神经网络的输 出结果与期望输出结果的误差在预设范围内。  Back Propagation (BP) Neural network is a kind of multi-layer feedforward neural network. It consists of two processes: forward propagation of information and back propagation of error. From its structural point of view, the BP neural network consists of three layers: the input layer, the intermediate layer, and the output layer. The neurons in the input layer are responsible for receiving input information from the outside world and transmitting them to the neurons in the middle layer. The middle layer is the internal information processing layer, responsible for information transformation. According to the information change capability, the middle layer can be designed as a single hidden layer. Or multiple hidden layer structure; the last hidden layer is passed to the information of each neuron in the output layer. After a further processing, the forward propagation process of learning is completed, and the information processing result is output from the output layer to the outside, and the result is obtained. In contrast to the expected output, the error is backpropagated back to the BP neural network to adjust the weight values between the layers until the error between the output of the BP neural network and the expected output is within a predetermined range.

本实施例基于上述原理,采用 BP神经网络预测 NoC未来设定时间内 的流量变化值。 可选的, 可以用 NoC的多个网络字节序列训练 BP神经网 络, 即将各网络字节序列中相邻序列元素的差值输入 BP神经网络的输入 层, 调整 BP神经网络的各层之间的权重值, 并用权重值确定的 BP神经 网络预测 NoC 在未来设定时间内的流量变化值, 即从当前时刻到设定时 刻之间的流量变化值。  Based on the above principle, the present embodiment uses a BP neural network to predict the flow change value of the NoC in the future set time. Optionally, the BP neural network may be trained by using multiple network byte sequences of NoC, that is, the difference between adjacent sequence elements in each network byte sequence is input into the input layer of the BP neural network, and the layers of the BP neural network are adjusted. The weight value, and the BP neural network determined by the weight value predicts the flow change value of the NoC in the future set time, that is, the flow change value from the current time to the set time.

进一歩地, 可以获取 NoC中的中央处理单元 (Central Process Unit, 简称 CPU ) 的性能参数。 由于 CPU的处理能力和 NoC的网络字节序列流 量拥塞具有较强的相关性, 而且两者随时间的变化不会呈现显著的规律, 因此, 为了使 CPU的处理能力和 NoC的网络字节序列流量匹配, 可以获 取 CPU 的性能参数, 如其当前的利用率等, 之后再根据预测出的设定时 间内的流量变化值和 CPU当前的性能参数,控制 NoC的当前流量。例如, 若预测出在设定时间内 NoC的流量会增大, 而 CPU处理刚够当前的 NoC 流量, 那么就可以将 NoC的流量阈值调低, 避免下一刻流量增大而 CPU 无法处理, 而导致网络字节序列流量拥塞。 Further, the performance parameters of the Central Processing Unit (CPU) in the NoC can be obtained. Since the processing power of the CPU has a strong correlation with the traffic congestion of the NoC network byte sequence, and the change of the two does not show a significant rule with time, therefore, in order to make the processing power of the CPU and the network byte sequence of NoC The traffic matching can obtain the performance parameters of the CPU, such as its current utilization rate, and then control the current traffic of the NoC according to the predicted traffic change value within the set time and the current performance parameter of the CPU. For example, if it is predicted that the NoC traffic will increase during the set time, and the CPU processes just enough current NoC Traffic, then you can lower the NoC traffic threshold to avoid the next time the traffic increases and the CPU can't handle it, which causes the network byte sequence traffic to be congested.

本发明实施例提供的片上网络 NoC 的流量控制方法, 首先采用反向 传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 再获取 NoC 中的中央处理单元 CPU 的性能参数, 之后根据流量变化值和性能参数, 控制 NoC的当前流量。本实施例通过综合衡量 CPU的性能参数和 NoC的 流量变化值, 保证了 CPU处理能力和 NoC的流量变化相匹配, 达到了控 制 NoC的网络字节序列流量, 提升 NoC的吞吐量, 避免流量拥塞的效果。 图 2为本发明实施例二提供的一种 NoC的流量控制方法的流程图。 本 实施例中各歩骤的执行主体为具备一定处理能力的处理器, 例如, 可以是 EM2o 如图 2所示, 该方法包括以下歩骤:  The flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC. In this embodiment, by comprehensively measuring the CPU performance parameter and the NoC traffic change value, the CPU processing capability and the NoC traffic change are matched, the network byte sequence traffic of the NoC is controlled, the NoC throughput is improved, and traffic congestion is avoided. Effect. FIG. 2 is a flowchart of a NoC flow control method according to Embodiment 2 of the present invention. The execution body of each step in this embodiment is a processor with certain processing capability. For example, it may be EM2o. As shown in FIG. 2, the method includes the following steps:

S200、 训练 BP神经网络。  S200, training BP neural network.

从歩骤 S 100的描述中可知, 为了使用 BP神经网络准确预测 NoC的 流量, 可以首先对 BP神经网络进行训练, 即确定 BP神经网络各层之间 的权重值。  It can be seen from the description of step S 100 that in order to accurately predict the flow of NoC using the BP neural network, the BP neural network can be trained first, that is, the weight value between the layers of the BP neural network is determined.

具体的, 该训练过程可以分为下面三个歩骤:  Specifically, the training process can be divided into the following three steps:

1 ) 获取 NoC的多个训练网络字节序列。  1) Get multiple training network byte sequences of NoC.

由于 NoC 的网络流量字节序列在具有多歩相关性, 即当前流量与过 去若干个采样间隔的流量之间存在一定关系, 因此, 可以用 NoC 的多个 训练网络字节序列来训练 BP神经网络。  Since NoC's network traffic byte sequence has a certain relationship, that is, there is a certain relationship between the current traffic and the traffic of several sampling intervals in the past, BP neural network can be trained with multiple training network byte sequences of NoC. .

具体在获取时, 可以用 NoC的输入输出 (Input Output, 简称 10 ) 端 采样获取上述多个训练网络字节序列。  Specifically, when acquiring, the above-mentioned multiple training network byte sequences can be obtained by using the NoC input output (Input Output, referred to as 10) sampling.

2 ) 计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训 练网络字节序列对应的训练流量差值序列。  2) Calculate the difference between adjacent sequence elements in each training network byte sequence to obtain a training traffic difference sequence corresponding to each training network byte sequence.

由于 NoC 的实际流量的抖动比较大, 因此, 可选的, 可以用绝对误 差法来预测, 即可以先获取 NoC 的多个训练网络字节序列, 然后计算各 训练网络字节序列中相邻序列元素之间的差值, 得到各训练网络字节序列 对应的训练流量差值序列。  Since the actual traffic of the NoC is relatively large, it can be predicted by the absolute error method. That is, multiple training network byte sequences of NoC can be obtained first, and then adjacent sequences in each training network byte sequence are calculated. The difference between the elements obtains a training traffic difference sequence corresponding to each training network byte sequence.

3 ) 采用训练流量差值序列进行训练, 得到 BP神经网络。 得到各训练网络字节序列对应的训练流量差值序列之后, 可以用该训 练流量差值序列训练 BP神经网络, 得到各层之间权重值稳定的 BP神经 网络。 3) Training using the training traffic difference sequence to obtain BP neural network. After obtaining the training traffic difference sequence corresponding to each training network byte sequence, the BP neural network can be trained by using the training traffic difference sequence to obtain a BP neural network with stable weight values between layers.

S20K 采用 BP神经网络预测 NoC未来设定时间内的流量变化值。 当 BP神经网络训练完成之后, 也就是其各层之间的权重值都确定之 后, 即可用该 BP神经网络来预测 NoC在未来设定时间内的流量变化值。  The S20K uses BP neural network to predict the flow change value of NoC in the future set time. After the BP neural network training is completed, that is, after the weight values between the layers are determined, the BP neural network can be used to predict the flow change value of the NoC in the future set time.

具体的, 可以首先根据设定时间和设定相关间隔, 从 NoC的 10端采 样获取预测网络字节序列。 需要说明的是, 该设定相关间隔为估计的 NoC 的网络字节序列的相关性, 可以根据实际的 NoC 流量情况确定, 此外, 设定时间可以取当前采样间隔的下一采样间隔等,具体也是视实际的 NoC 流量情况确定。  Specifically, the predicted network byte sequence may be obtained by sampling from the 10th end of the NoC according to the set time and the set correlation interval. It should be noted that the setting correlation interval is the correlation of the estimated NoC network byte sequence, and can be determined according to the actual NoC traffic situation. In addition, the set time can take the next sampling interval of the current sampling interval, etc. It is also determined based on the actual NoC flow rate.

进一歩地, 可以计算预测网络字节序列中相邻序列元素之间的差值, 得到预测流量差值序列。 也就是说, 将预测网络字节序列的前后相邻两项 相减, 得到下一采样间隔与前一采样间隔之差, 该差值组成的新序列即为 上述预测流量差值序列。  Further, the difference between adjacent sequence elements in the predicted network byte sequence can be calculated to obtain a sequence of predicted traffic differences. That is to say, the two adjacent items of the predicted network byte sequence are subtracted to obtain the difference between the next sampling interval and the previous sampling interval, and the new sequence composed of the difference is the predicted flow difference difference sequence.

更进一歩地,可以将上述预测流量差值序列作为 BP神经网络的输入, 然后用该 BP神经网络的输出作为上述流量变化值。  Further, the predicted flow difference difference sequence can be used as an input of the BP neural network, and then the output of the BP neural network is used as the flow change value.

5202、 获取 NoC中的 CPU的性能参数。  5202. Obtain performance parameters of the CPU in the NoC.

具体的, 该性能参数作为衡量 CPU 的当前处理能力的性能指标, 可 选的, 其可以为 CPU的当前利用率。  Specifically, the performance parameter is used as a performance indicator for measuring the current processing capability of the CPU. Alternatively, it may be the current utilization rate of the CPU.

5203、 根据流量变化值和性能参数, 控制 NoC的当前流量。  5203. Control the current flow of the NoC according to the flow change value and the performance parameter.

由于若 CPU的利用率过高, 如大于 90% , 那么可能会导致假死, 若 此时 NoC的流量在未来设定时间内增大, 则该处理器核(Core)就无法处 理与其他 Core间的通信机制, 而容易导致系统局部故障; 若 CPU的利用 率过低, 如小于 40%, 即表示 Core的资源利用不足, 若此时 NoC的流量 在未来设定时间内增大, 那么就会导致核间通信延迟响应加剧, 则会造成 系统局部性能降低。 因此, 需要综合考虑 CPU的处理能力和 NoC的流量 之间的相关性, 即在得到未来设定时间内的流量变化值和 CPU 的性能参 数之后, 根据上述二者来控制 NoC 的当前流量, 以在不利情况发生前, 动态自适应调整 NoC的当前流量, 保证 Core处于合理性能区间, 避免前 述情况的发生。 If the CPU utilization rate is too high, such as greater than 90%, it may lead to suspended animation. If the NoC traffic increases in the future set time, the processor core (Core) cannot be processed with other Cores. The communication mechanism is easy to cause partial failure of the system; if the utilization rate of the CPU is too low, such as less than 40%, it means that the resources of the Core are underutilized. If the traffic of the NoC increases in the future set time, then As a result, the delayed response of the inter-core communication is intensified, which may result in a decrease in local performance of the system. Therefore, it is necessary to comprehensively consider the correlation between the processing power of the CPU and the traffic of the NoC, that is, after obtaining the traffic change value and the performance parameter of the CPU in the future set time, the current flow of the NoC is controlled according to the above two, Dynamically adaptively adjust the current flow of the NoC before the adverse situation occurs, ensuring that the Core is in a reasonable performance range, avoiding before The occurrence of the situation.

可选的, 在控制 NoC的当前流量时, 一种策略是在不改变 CPU的性 能参数的情况下,控制该 NoC的流量阈值, 使其不超过 CPU的处理能力; 另一种策略是在不改变 NoC的流量阈值的前提下,调整 CPU的性能参数, 使 CPU的处理能力与未来 NoC的流量能够更好的匹配,以提高 CPU的性 能。  Optionally, when controlling the current traffic of the NoC, a strategy is to control the traffic threshold of the NoC so as not to exceed the processing capability of the CPU without changing the performance parameter of the CPU; another strategy is not Under the premise of changing the NoC traffic threshold, the performance parameters of the CPU are adjusted to better match the processing power of the CPU with the traffic of the NoC in the future to improve the performance of the CPU.

作为第一种策略, 可以首先判断性能参数是否超过第一预设阈值; 若 超过第一预设阈值, 且流量变化值大于零, 则降低 NoC 的流量上限值。 该第一预设阈值用来表征当前 CPU 的处理能力的瓶颈, 因此, 该策略是 指, 当通过性能参数判断 CPU 当前的处理能力已经达到瓶颈, 并且预测 出的流量变化值大于零, 即未来 NoC 的流量会增大, 那么, 可以反向控 制 NoC的流量, 即通过降低该 NoC的流量上限值, 对 NoC的流量进行限 制, 从而避免在未来出现 NoC流量增长而 CPU无法处理的情况。 当然, 若预测未来 NoC的流量不会增大, 则可以不动作。  As a first strategy, it may be first determined whether the performance parameter exceeds a first preset threshold; if the first preset threshold is exceeded, and the flow change value is greater than zero, the flow upper limit value of the NoC is decreased. The first preset threshold is used to represent a bottleneck of the processing capability of the current CPU. Therefore, the policy refers to determining that the current processing capability of the CPU has reached a bottleneck through the performance parameter, and the predicted traffic change value is greater than zero, that is, the future. The flow rate of the NoC will increase. Then, the flow of the NoC can be reversely controlled. That is, the flow rate of the NoC is limited by lowering the flow rate upper limit value of the NoC, thereby avoiding the situation where the NoC flow rate increases in the future and the CPU cannot handle the flow. Of course, if it is predicted that the traffic of the NoC will not increase in the future, it may not operate.

作为另一种策略, 可以首先判断流量变化值是否大于零; 若大于零, 且性能参数低于第二预设阈值, 则调整 CPU的调度参数以使 CPU的处理 能力与流量变化值相匹配, 该调度参数可以是 CPU 的电压、 或主频、 或 主频和电压。 该策略是指, 当预测出的流量变化值大于零, 即未来 NoC 的流量会增大, 而此时 CPU的处理能力并未达到瓶颈, 即未超出 Core的 处理能力范围, 则可以通过调整 CPU 的电压、 或主频、 或主频和电压, 自适应调节 Core的性能或功耗开销, 使 CPU的处理能力能够适应未来时 间内的流量增长。 当然, 若预测未来 NoC 的流量不会增大, 即未预测到 发生拥塞的风险, 也可以利用同时多线程调度(Simultaneous Multi Threading)来均衡 CPU处理能力和 NoC的流量之间的关系, 以提高 CPU 的性能。  As another strategy, it may be first determined whether the flow change value is greater than zero; if greater than zero, and the performance parameter is lower than the second preset threshold, the CPU scheduling parameter is adjusted to match the processing capability of the CPU with the flow change value. The scheduling parameter can be the voltage of the CPU, or the primary frequency, or the primary frequency and voltage. The strategy is that when the predicted traffic change value is greater than zero, that is, the traffic of the NoC will increase in the future, and the CPU's processing capability does not reach the bottleneck, that is, the core processing capacity is not exceeded, the CPU can be adjusted. The voltage, or the main frequency, or the main frequency and voltage, adaptively adjust the performance or power consumption of the Core, enabling the CPU's processing power to adapt to the traffic growth in the future. Of course, if it is predicted that the traffic of NoC will not increase in the future, that is, the risk of congestion is not predicted, Simultaneous Multi Threading can also be used to balance the relationship between CPU processing power and NoC traffic to improve CPU performance.

下面以 EM2的架构为例, 详细说明上述训练过程以及对 NoC流量的 控制过程。  The following takes the architecture of EM2 as an example to describe the above training process and the control process of NoC traffic.

首先, 假定 ( =1,2,...^)表示第 k个采样间隔的流量, N表示用来训 练该 BP神经网络的训练网络字节序列的总长度,若该 NoC的训练网络字 节序列的相关间隔为 p, 那么, 提前 q歩预测的流量模型为: Xk+q = f Xk ' Xk—q ' " " Xk—P+q、 ^ ^ 其中, 表示第 k+q个采样间隔的流量, 特别的, 当 q=l时, 即提 前一歩预测的流量模型为: First, assume that ( =1, 2, ... ^) represents the flow of the kth sampling interval, and N represents the total length of the training network byte sequence used to train the BP neural network, if the NoC training network byte The correlation interval of the sequence is p, then the traffic model predicted by q歩 in advance is: X k+q = f X k ' X k—q '"" X k— P +q, ^ ^ where denotes the flow rate of the k+qth sampling interval, in particular, when q=l, ie The predicted traffic model is:

xk+\: (¾ ' ¾-ι ' · · · ' xk-P+\ ) ( 2) 也就是说, +1与它之前的 p个采样间隔的流量之间存在映射关系 f, 由于 f是难以显示描述的非线性函数, 并且, 正如前文所述, 在实际中,Xk+\: (3⁄4 ' 3⁄4-ι ' · · · ' x k- P +\ ) ( 2) That is, there is a mapping relationship f between +1 and the flow rate of p samples before it, since f is It is difficult to display the described nonlinear function, and, as mentioned earlier, in practice,

NoC 的流量抖动比较大, 因此, 可以采用绝对误差法来度量。 下文均以 q=l为例说明, 但并不以此为限定。 The flow jitter of the NoC is relatively large, so it can be measured by the absolute error method. The following is an example of q=l, but it is not limited thereto.

具体的, 可以计算 即计算上述训练网络字节训练序列前 后两项的差值, 构成一个新的序列, 即训练流量差值序列, 之后再对该训 练流量差值序列进行流量预测: 其中, 表示第 k个采样间隔至第 k+1个采样间隔之间的流量变化 值。  Specifically, the difference between the two items before and after the training network byte training sequence can be calculated to form a new sequence, that is, the training traffic difference sequence, and then the traffic prediction difference sequence is subjected to traffic prediction: where, The value of the flow change between the kth sampling interval and the k+1th sampling interval.

在得到上述训练流量差值序列之后, 即可用它来训练 BP神经网络, 由 于训练 BP神经网络需要大量的样本, 当式(3 ) 中的 k取不同值时, 即可 得到多个用于训练 BP神经网络的训练网络字节序列。  After obtaining the above training flow difference sequence, it can be used to train the BP neural network. Since the training BP neural network requires a large number of samples, when k in the formula (3) takes different values, multiple trainings can be obtained. Training network byte sequence of BP neural network.

以图 3为例, 图 3为本实施例二提供的基于 EM2的 NoC流量控制示 意图。 如图 3所示, 其中, 路由器 1~6即为背景技术中的三组路由器, 具 体的, 路由器 1和路由器 2用于网络迁移, 路由器 3和路由器 4用于远程 网络存取, 路由器 5和路由器 6用于网络直接存储器存取, 上述 6个路由 器的连接箭头表示其上转发的网络数据。 处理器核 7代表该 NoC对应的 CPU。  Taking FIG. 3 as an example, FIG. 3 is a schematic diagram of the NoC flow control based on EM2 provided in the second embodiment. As shown in FIG. 3, routers 1~6 are three groups of routers in the background art. Specifically, routers 1 and 2 are used for network migration, routers 3 and 4 are used for remote network access, and routers 5 and Router 6 is used for network direct memory access, and the connection arrows of the above six routers represent network data forwarded thereon. The processor core 7 represents the CPU corresponding to the NoC.

该 BP神经网络分为三层, 输入层 8、 中间层 9和输出层 10, 它们在 图 3中是用虚线框表示的。  The BP neural network is divided into three layers, an input layer 8, an intermediate layer 9, and an output layer 10, which are indicated by dashed boxes in Fig. 3.

首先, 输入层有 6个神经元, 即图 3中的黑色方格, 每个神经元分别 连接一个路由器, 与上面的例子结合, 即此时 p=6, 该 6个神经元即接收 的是训练流量差值序列中的 6个量, 分别是  First, the input layer has six neurons, the black square in Figure 3. Each neuron is connected to a router, combined with the above example, that is, p=6, the six neurons receive Training 6 quantities in the flow difference sequence, respectively

中间层, 也即隐藏层有 3个神经元, 即图 3中的黑色方格, 它们分别 接收来自输入层的 6个输入, 并且将 3个输出传至输出层, 这 3个输出即 为 3个流量变化值, 从逻辑功能上来说, 这 3个流量变化值分别对应着用 于实现三个不同功能的三组路由器对应的 NoC的流量变化值。 在实际中, 该中间层可以是由多层组成, 而并不一定是一层。 举例来说, 用 表示从 第 m-1层的神经元 j到第 m层神经元 i的权重值,假设 表示第 m-1层神 经元 i的第 k次输入, gm表示其转移函数, 即第 m层输入到输出的转移函 数, 表示相应输出。 例如, 若中间层只有一层, 则 表示从输入层的第 1个神经元到中间层的第 1个神经元之间的权重值, 表示从中间层的第 1个 神经元到输出层的第 1个神经元之间的权重值。 The middle layer, that is, the hidden layer, has three neurons, namely the black squares in Figure 3, which receive six inputs from the input layer and pass three outputs to the output layer. These three outputs are For the three traffic change values, the three traffic change values correspond to the NoC traffic change values corresponding to the three groups of routers for implementing three different functions. In practice, the intermediate layer may be composed of multiple layers, and is not necessarily a layer. For example, with the weight value representing the neuron j from the m-1th layer to the mth layer neuron i, assuming the kth input of the m-1th layer i, g m represents its transfer function, That is, the transfer function of the mth input to the output represents the corresponding output. For example, if there is only one layer in the middle layer, it means the weight value from the first neuron of the input layer to the first neuron of the middle layer, indicating the first neuron from the middle layer to the output layer. The weight value between 1 neuron.

上述 和 满足如下代数关系式: The above and satisfy the following algebraic relations:

=∑ ¾-1,¾ = ^«) ( 4 ) 输出 ¾有 1个神经元, 即图 3中的黑色方格, 其接收来自中间层的 3 个流量变化值, 即 , 并根据这 3个流量变化值, 综合得到整个 NoC在 未来设定时间内的流量变化值 ¾+1, 然后与下一采样间隔实际的 Δ¾+1进行 比较, 若误差不在预设范围内, 则继续用下一个训练网络字节序列训练该 BP网络, 直至误差落在预设范围之内。 =∑ 3⁄4- 1 ,3⁄4 = ^«) ( 4 ) The output 3⁄4 has 1 neuron, the black square in Figure 3, which receives 3 flow change values from the middle layer, ie, according to these 3 The flow change value is combined to obtain the flow change value of the entire NoC in the future set time 3⁄4+1 , and then compared with the actual Δ 3⁄4+1 of the next sampling interval. If the error is not within the preset range, continue with the next one. Train the network byte sequence to train the BP network until the error falls within the preset range.

通过大量的样本训练之后, 该 BP神经网络的权重值就确定了, 此时, 即可将预测网络字节序列输入该 BP神经网络, 并预测 NoC在未来设定时 间内的流量变化值, 并根据预测结果和 CPU的性能参数控制 NoC的当前 流量。  After training through a large number of samples, the weight value of the BP neural network is determined. At this time, the predicted network byte sequence can be input into the BP neural network, and the flow change value of the NoC in the future set time is predicted, and The current flow of the NoC is controlled based on the predicted result and the performance parameters of the CPU.

需要说明的是, 在实际中, 可以用 BP神经网络的输出层输出预测的 NoC在未来设定时间内的流量变化值, 之后再按照歩骤 S202~S203 的描 述, 在获取 CPU的性能参数之后, 再综合该 CPU的性能参数和预测的流 量变化值, 控制 NoC的当前流量; 当然, 也可以将 CPU的性能参数输入 BP 神经网络的输出层, 由该输出层完成对未来设定时间内的流量变化值 的预测以及对 NoC的当前流量的控制, 图 3示出的即为上述第二种方式。  It should be noted that, in practice, the output layer of the BP neural network may be used to output the predicted flow change value of the NoC in the future set time, and then after obtaining the performance parameter of the CPU according to the description of steps S202 to S203. And synthesizing the performance parameters of the CPU and the predicted flow change value, and controlling the current flow of the NoC; of course, the performance parameter of the CPU may also be input into the output layer of the BP neural network, and the output layer completes the time set in the future. The prediction of the flow change value and the control of the current flow of the NoC, which is shown in Fig. 3, is the second mode described above.

本发明实施例提供的片上网络 NoC 的流量控制方法, 首先采用反向 传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 再获取 NoC 中的中央处理单元 CPU 的性能参数, 之后根据流量变化值和性能参数, 控制 NoC的当前流量。本实施例通过综合衡量 CPU的性能参数和 NoC的 流量变化值, 保证了 CPU处理能力和 NoC的流量变化相匹配, 达到了控 制 NoC的网络字节序列流量, 提升 NoC的吞吐量, 避免流量拥塞的效果。 图 4为本发明实施例三提供的一种 NoC的流量控制装置的结构示意图。 如图 4所示, 该流量控制装置 1包括: 预测模块 10、 获取模块 11和控制 模块 12。 The flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC. In this embodiment, by comprehensively measuring the performance parameter of the CPU and the flow change value of the NoC, the CPU processing capability and the NoC traffic change are matched, and the control is achieved. NoC's network byte sequence traffic improves the throughput of NoC and avoids traffic congestion. 4 is a schematic structural diagram of a NoC flow control device according to Embodiment 3 of the present invention. As shown in FIG. 4, the flow control device 1 includes: a prediction module 10, an acquisition module 11, and a control module 12.

具体的, 预测模块 10用于采用反向传播 BP神经网络预测 NoC未来 设定时间内的流量变化值; 获取模块 11用于获取 NoC中的中央处理单元 CPU的性能参数;控制模块 12用于根据流量变化值和性能参数,控制 NoC 的当前流量。  Specifically, the prediction module 10 is configured to use a back propagation BP neural network to predict a flow change value of the NoC in a future set time; the obtaining module 11 is configured to acquire a performance parameter of the central processing unit CPU in the NoC; and the control module 12 is configured to The flow change value and performance parameters control the current flow of the NoC.

进一歩地,预测模块 10还用于:获取 NoC的多个训练网络字节序列; 计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训练网络字 节序列对应的训练流量差值序列; 采用训练流量差值序列进行训练, 得到 BP神经网络。  Further, the prediction module 10 is further configured to: acquire a plurality of training network byte sequences of the NoC; calculate a difference between adjacent sequence elements in each training network byte sequence, and obtain training corresponding to each training network byte sequence. Sequence of traffic difference values; training is performed using training traffic difference sequence to obtain BP neural network.

更进一歩地, 预测模块 10具体用于: 根据设定时间和设定相关间隔, 从 NoC的输入输出 10端采样获取预测网络字节序列; 计算预测网络字节 序列中相邻序列元素之间的差值, 得到预测流量差值序列; 将预测流量差 值序列作为 BP神经网络的输入, 计算得到流量变化值。  Further, the prediction module 10 is specifically configured to: obtain a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval; calculate between the adjacent sequence elements in the predicted network byte sequence The difference is obtained, and the predicted flow difference difference sequence is obtained; the predicted flow difference difference sequence is used as the input of the BP neural network, and the flow change value is calculated.

更进一歩地, 控制模块 12具体用于: 判断性能参数是否超过第一预 设阈值; 若超过第一预设阈值, 且流量变化值大于零, 则降低 NoC 的流 量上限值。  Further, the control module 12 is specifically configured to: determine whether the performance parameter exceeds the first preset threshold; if the first preset threshold is exceeded, and the flow change value is greater than zero, the upper limit value of the NoC is decreased.

更进一歩地, 控制模块 12具体用于: 判断流量变化值是否大于零; 若大于零, 且性能参数低于第二预设阈值, 则调整 CPU 的调度参数以使 CPU的处理能力与流量变化值相匹配, 调度参数包括 CPU的电压和 /或主 频。  Further, the control module 12 is specifically configured to: determine whether the flow change value is greater than zero; if greater than zero, and the performance parameter is lower than the second preset threshold, adjust the scheduling parameter of the CPU to change the processing capability and flow of the CPU The values match, and the scheduling parameters include the voltage and/or the primary frequency of the CPU.

本发明实施例提供的片上网络 NoC 的流量控制方法, 首先采用反向 传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 再获取 NoC 中的中央处理单元 CPU 的性能参数, 之后根据流量变化值和性能参数, 控制 NoC的当前流量。本实施例通过综合衡量 CPU的性能参数和 NoC的 流量变化值, 保证了 CPU处理能力和 NoC的流量变化相匹配, 达到了控 制 NoC的网络字节序列流量, 提升 NoC的吞吐量, 避免流量拥塞的效果。 图 5为本发明实施例四提供的一种 NoC的流量控制装置的结构示意图。 如图 5所示, 该流量控制装置 2包括: 存储器 20和处理器 21。 The flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC. In this embodiment, by comprehensively measuring the CPU performance parameter and the NoC traffic change value, the CPU processing capability and the NoC traffic change are matched, the network byte sequence traffic of the NoC is controlled, the NoC throughput is improved, and traffic congestion is avoided. Effect. FIG. 5 is a schematic structural diagram of a NoC flow control device according to Embodiment 4 of the present invention. As shown in FIG. 5, the flow control device 2 includes: a memory 20 and a processor 21.

具体的, 存储器 20用于存储指令, 处理器 21用于运行存储器 20中 的指令以执行如实施例一和实施例二任一例所述的 NoC的流量控制方法。  Specifically, the memory 20 is configured to store instructions, and the processor 21 is configured to execute the instructions in the memory 20 to execute the NoC flow control method as described in any of the first embodiment and the second embodiment.

本发明实施例提供的片上网络 NoC 的流量控制方法, 首先采用反向 传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 再获取 NoC 中的中央处理单元 CPU 的性能参数, 之后根据流量变化值和性能参数, 控制 NoC的当前流量。本实施例通过综合衡量 CPU的性能参数和 NoC的 流量变化值, 保证了 CPU处理能力和 NoC的流量变化相匹配, 达到了控 制 NoC的网络字节序列流量, 提升 NoC的吞吐量, 避免流量拥塞的效果。  The flow control method for the on-chip network NoC provided by the embodiment of the present invention firstly uses the back propagation BP neural network to predict the flow change value of the NoC in the future set time; and then obtains the performance parameter of the central processing unit CPU in the NoC, and then according to the flow rate. Change values and performance parameters that control the current flow of the NoC. In this embodiment, by comprehensively measuring the CPU performance parameter and the NoC traffic change value, the CPU processing capability and the NoC traffic change are matched, the network byte sequence traffic of the NoC is controlled, the NoC throughput is improved, and traffic congestion is avoided. Effect.

在本申请所提供的几个实施例中, 应该理解到, 所揭露的设备和方法, 可以通过其它的方式实现。例如, 以上所描述的设备实施例仅仅是示意性的, 例如, 所述单元或模块的划分, 仅仅为一种逻辑功能划分, 实际实现时可以 有另外的划分方式, 例如多个单元或模块可以结合或者可以集成到另一个系 统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间的 耦合或直接耦合或通信连接可以是通过一些接口, 设备或模块的间接耦合或 通信连接, 可以是电性, 机械或其它的形式。  In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the device embodiments described above are only schematic. For example, the division of the unit or module is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or modules may be used. Combined or can be integrated into another system, or some features can be ignored, or not executed. Alternatively, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or module, and may be in electrical, mechanical or other form.

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的, 作 为模块显示的部件可以是或者也可以不是物理模块, 即可以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的部分或 者全部模块来实现本实施例方案的目的。  The modules described as separate components may or may not be physically separate. The components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the objectives of the solution of the embodiment.

本领域普通技术人员可以理解: 实现上述各方法实施例的全部或部分歩 骤可以通过程序指令相关的硬件来完成。 前述的程序可以存储于一计算机可 读取存储介质中。 该程序在执行时, 执行包括上述各方法实施例的歩骤; 而 前述的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代码 的介质。  One of ordinary skill in the art will appreciate that all or a portion of the steps of implementing the various method embodiments described above can be accomplished by hardware associated with the program instructions. The aforementioned program can be stored in a computer readable storage medium. The program, when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述各实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 者对其中部分或者全部技术特征进行等同替换; 而这些修改或者替换, 使相应技术方案的本质脱离本发明各实施例技术方案的范围。 Finally, it should be noted that the above embodiments are only for explaining the technical solutions of the present invention, and are not intended to be limiting thereof; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art will understand that The technical solutions described in the foregoing embodiments can still be modified. Equivalent replacement of some or all of the technical features; and such modifications or substitutions, the nature of the corresponding technical solutions are out of the scope of the technical solutions of the embodiments of the present invention.

Claims

权 利 要 求 书 Claim 1、 一种片上网络 NoC的流量控制方法, 其特征在于, 包括: 采用反向传播 BP神经网络预测 NoC未来设定时间内的流量变化值; 获取所述 NoC中的中央处理单元 CPU的性能参数; A flow control method for an on-chip network NoC, comprising: using a back propagation BP neural network to predict a flow change value of a NoC in a future set time; acquiring a performance parameter of a central processing unit CPU in the NoC ; 根据所述流量变化值和所述性能参数, 控制所述 NoC的当前流量。  Controlling the current flow rate of the NoC according to the flow change value and the performance parameter. 2、 根据权利要求 1所述的方法, 其特征在于, 所述采用反向传播 BP 神经网络预测 NoC未来设定时间内的流量变化值之前, 还包括:  2. The method according to claim 1, wherein the predicting the flow change value of the NoC in the future set time by using the back propagation BP neural network further comprises: 获取所述 NoC的多个训练网络字节序列;  Obtaining a plurality of training network byte sequences of the NoC; 计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训练网 络字节序列对应的训练流量差值序列;  Calculating a difference between adjacent sequence elements in each training network byte sequence, and obtaining a training traffic difference sequence corresponding to each training network byte sequence; 采用所述训练流量差值序列进行训练, 得到所述 BP神经网络。  The training flow difference sequence is used to train to obtain the BP neural network. 3、 根据权利要求 1或 2所述的方法, 其特征在于, 所述采用反向传 播 BP神经网络预测 NoC未来设定时间内的流量变化值, 具体包括:  The method according to claim 1 or 2, wherein the using the reverse propagation BP neural network to predict the flow change value of the NoC in the future set time comprises: 根据所述设定时间和设定相关间隔, 从所述 NoC的输入输出 10端采 样获取预测网络字节序列;  Obtaining a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval; 计算所述预测网络字节序列中相邻序列元素之间的差值, 得到预测流 量差值序列;  Calculating a difference between adjacent sequence elements in the predicted network byte sequence to obtain a predicted flow difference difference sequence; 将所述预测流量差值序列作为所述 BP神经网络的输入, 计算得到所 述流量变化值。  The predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated. 4、 根据权利要求 1-3任一项所述的方法, 其特征在于, 所述根据所述 流量变化值和所述性能参数, 控制所述 NoC的当前流量, 具体包括: 判断所述性能参数是否超过第一预设阈值;  The method according to any one of claims 1-3, wherein the controlling the current traffic of the NoC according to the traffic change value and the performance parameter comprises: determining the performance parameter Whether the first preset threshold is exceeded; 若超过所述第一预设阈值, 且所述流量变化值大于零, 则降低所述 NoC的流量上限值。  If the first preset threshold is exceeded, and the flow change value is greater than zero, the flow upper limit value of the NoC is decreased. 5、 根据权利要求 1-3任一项所述的方法, 其特征在于, 所述根据所述 流量变化值和所述性能参数, 控制所述 NoC的当前流量, 具体包括: 判断所述流量变化值是否大于零;  The method according to any one of claims 1-3, wherein the controlling the current traffic of the NoC according to the traffic change value and the performance parameter, specifically: determining the traffic change Whether the value is greater than zero; 若大于零, 且所述性能参数低于第二预设阈值, 则调整所述 CPU 的 调度参数以使所述 CPU 的处理能力与所述流量变化值相匹配, 所述调度 参数包括所述 CPU的电压和 /或主频。 If the performance parameter is greater than zero, and the performance parameter is lower than the second preset threshold, adjusting the scheduling parameter of the CPU to match the processing capability of the CPU with the traffic change value, where the scheduling parameter includes the CPU Voltage and / or frequency. 6、 根据权利要求 1-5任一项所述的方法, 其特征在于, 所述性能参数 为所述 CPU的当前利用率。 The method according to any one of claims 1 to 5, wherein the performance parameter is a current utilization rate of the CPU. 7、 一种片上网络 NoC的流量控制装置, 其特征在于, 包括: 预测模块,用于采用反向传播 BP神经网络预测 NoC未来设定时间内 的流量变化值;  A flow control device for an on-chip network NoC, comprising: a prediction module, configured to predict a flow change value of a NoC in a future set time by using a back propagation BP neural network; 获取模块, 用于获取所述 NoC中的中央处理单元 CPU的性能参数; 控制模块, 用于根据所述流量变化值和所述性能参数, 控制所述 NoC 的当前流量。  An acquisition module, configured to acquire a performance parameter of a central processing unit CPU in the NoC, and a control module, configured to control a current traffic of the NoC according to the traffic change value and the performance parameter. 8、 根据权利要求 7所述的装置, 其特征在于, 所述预测模块还用于: 获取所述 NoC的多个训练网络字节序列;  The apparatus according to claim 7, wherein the prediction module is further configured to: acquire a plurality of training network byte sequences of the NoC; 计算各训练网络字节序列中相邻序列元素之间的差值, 得到各训练网 络字节序列对应的训练流量差值序列;  Calculating a difference between adjacent sequence elements in each training network byte sequence, and obtaining a training traffic difference sequence corresponding to each training network byte sequence; 采用所述训练流量差值序列进行训练, 得到所述 BP神经网络。  The training flow difference sequence is used to train to obtain the BP neural network. 9、 根据权利要求 7或 8所述的装置, 其特征在于, 所述预测模块具 体用于:  9. The apparatus according to claim 7 or 8, wherein the prediction module is specifically configured to: 根据所述设定时间和设定相关间隔, 从所述 NoC的输入输出 10端采 样获取预测网络字节序列;  Obtaining a predicted network byte sequence from the input and output 10 of the NoC according to the set time and the set correlation interval; 计算所述预测网络字节序列中相邻序列元素之间的差值, 得到预测流 量差值序列;  Calculating a difference between adjacent sequence elements in the predicted network byte sequence to obtain a predicted flow difference difference sequence; 将所述预测流量差值序列作为所述 BP神经网络的输入, 计算得到所 述流量变化值。  The predicted flow difference difference sequence is used as an input of the BP neural network, and the flow change value is calculated. 10、 根据权利要求 7-9任一项所述的装置, 其特征在于, 所述控制模 块具体用于:  The device according to any one of claims 7-9, wherein the control module is specifically configured to: 判断所述性能参数是否超过第一预设阈值;  Determining whether the performance parameter exceeds a first preset threshold; 若超过所述第一预设阈值, 且所述流量变化值大于零, 则降低所述 NoC的流量上限值。  If the first preset threshold is exceeded, and the flow change value is greater than zero, the flow upper limit value of the NoC is decreased. 11、 根据权利要求 7-9任一项所述的装置, 其特征在于, 所述控制模 块具体用于:  The device according to any one of claims 7-9, wherein the control module is specifically configured to: 判断所述流量变化值是否大于零;  Determining whether the flow change value is greater than zero; 若大于零, 且所述性能参数低于第二预设阈值, 则调整所述 CPU 的 调度参数以使所述 CPU 的处理能力与所述流量变化值相匹配, 所述调度 参数包括所述 CPU的电压和 /或主频。 If the value is greater than zero, and the performance parameter is lower than the second preset threshold, adjusting the CPU Scheduling parameters to match the processing capabilities of the CPU to the traffic change value, the scheduling parameters including the voltage and/or the primary frequency of the CPU. 12、 一种片上网络 NoC 的流量控制装置, 其特征在于, 存储器, 用 于存储指令,处理器,用于运行所述存储器中的指令以执行如权利要求 1-6 任一项所述的片上网络 NoC的流量控制方法。  12. A flow control device for an on-chip network NoC, characterized by: a memory for storing instructions, a processor, configured to execute an instruction in the memory to perform on-chip as claimed in any one of claims 1-6 Network NoC flow control method.
PCT/CN2014/078182 2014-05-22 2014-05-22 Method and device for controlling traffic of network-on-chip (noc) Ceased WO2015176289A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201480059677.0A CN105684506B (en) 2014-05-22 2014-05-22 Flow control method and device for network-on-chip NoC
PCT/CN2014/078182 WO2015176289A1 (en) 2014-05-22 2014-05-22 Method and device for controlling traffic of network-on-chip (noc)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/078182 WO2015176289A1 (en) 2014-05-22 2014-05-22 Method and device for controlling traffic of network-on-chip (noc)

Publications (1)

Publication Number Publication Date
WO2015176289A1 true WO2015176289A1 (en) 2015-11-26

Family

ID=54553240

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/078182 Ceased WO2015176289A1 (en) 2014-05-22 2014-05-22 Method and device for controlling traffic of network-on-chip (noc)

Country Status (2)

Country Link
CN (1) CN105684506B (en)
WO (1) WO2015176289A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111573A (en) * 2019-05-15 2019-08-09 辽宁工业大学 A kind of tailback integrated dispatch method based on Internet of Things
US11817903B2 (en) 2020-08-06 2023-11-14 Celestial Ai Inc. Coherent photonic computing architectures
US11835777B2 (en) 2022-03-18 2023-12-05 Celestial Ai Inc. Optical multi-die interconnect bridge (OMIB)
US12191257B2 (en) 2022-07-26 2025-01-07 Celestial Ai Inc. Electrical bridge package with integrated off-bridge photonic channel interface
US12217056B2 (en) 2023-01-27 2025-02-04 Celestial Ai Inc. Load/store unit for a tensor engine and methods for loading or storing a tensor
US12259575B2 (en) 2021-06-18 2025-03-25 Celestial Ai Inc. Clock signal distribution using photonic fabric
US12271595B2 (en) 2022-03-18 2025-04-08 Celestial Ai Inc. Photonic memory fabric for system memory interconnection
US12283584B2 (en) 2022-07-26 2025-04-22 Celestial Ai Inc. Electrical bridge package with integrated off-bridge photonic channel interface
US12353988B2 (en) 2020-07-09 2025-07-08 Celestial Ai Inc. Neuromorphic photonics with coherent linear neurons
US12436346B2 (en) 2022-03-18 2025-10-07 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110958177B (en) * 2019-11-07 2022-02-18 浪潮电子信息产业股份有限公司 Network-on-chip route optimization method, device, equipment and readable storage medium
CN115767327B (en) * 2022-11-08 2025-05-09 西安电子科技大学 A traffic prediction controller for on-chip optical network and on-chip optical network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102204181A (en) * 2009-03-12 2011-09-28 松下电器产业株式会社 Optimal route selection apparatus, optimal route selection method, and program
US20140040528A1 (en) * 2012-07-31 2014-02-06 Jichuan Chang Reconfigurable crossbar networks
WO2014073188A1 (en) * 2012-11-08 2014-05-15 パナソニック株式会社 Semiconductor circuit bus system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102204181A (en) * 2009-03-12 2011-09-28 松下电器产业株式会社 Optimal route selection apparatus, optimal route selection method, and program
US20140040528A1 (en) * 2012-07-31 2014-02-06 Jichuan Chang Reconfigurable crossbar networks
WO2014073188A1 (en) * 2012-11-08 2014-05-15 パナソニック株式会社 Semiconductor circuit bus system

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111573A (en) * 2019-05-15 2019-08-09 辽宁工业大学 A kind of tailback integrated dispatch method based on Internet of Things
US12353988B2 (en) 2020-07-09 2025-07-08 Celestial Ai Inc. Neuromorphic photonics with coherent linear neurons
US11817903B2 (en) 2020-08-06 2023-11-14 Celestial Ai Inc. Coherent photonic computing architectures
US12259575B2 (en) 2021-06-18 2025-03-25 Celestial Ai Inc. Clock signal distribution using photonic fabric
US12339490B2 (en) 2021-06-18 2025-06-24 Celestial Ai Inc. Clock signal distribution using photonic fabric
US12353006B2 (en) 2021-06-18 2025-07-08 Celestial Ai Inc. Electro-photonic network for machine learning
US12216318B2 (en) 2022-03-18 2025-02-04 Celestial Ai Inc. Optical bridging element for separately stacked electrical ICs
US12298608B1 (en) 2022-03-18 2025-05-13 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range
US12164162B2 (en) 2022-03-18 2024-12-10 Celestial Ai Inc. Multicomponent photonically bridged assembly
US12242122B2 (en) 2022-03-18 2025-03-04 Celestial Ai Inc. Multicomponent photonically intra-die bridged assembly
US12442997B2 (en) 2022-03-18 2025-10-14 Celestial AI, Inc. Optically bridged multicomponent package with extended temperature range
US12271595B2 (en) 2022-03-18 2025-04-08 Celestial Ai Inc. Photonic memory fabric for system memory interconnection
US12443000B2 (en) 2022-03-18 2025-10-14 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range
US12468103B2 (en) 2022-03-18 2025-11-11 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range
US12124095B2 (en) 2022-03-18 2024-10-22 Celestial Ai Inc. Optical multi-die interconnect bridge with optical interface
US11835777B2 (en) 2022-03-18 2023-12-05 Celestial Ai Inc. Optical multi-die interconnect bridge (OMIB)
US12164161B1 (en) 2022-03-18 2024-12-10 Celestial Ai Inc. Stacked-dies optically bridged multicomponent package
US12399333B2 (en) 2022-03-18 2025-08-26 Celestial AI, Inc. Optical multi-die interconnect bridge with electrical and optical interfaces
US12436346B2 (en) 2022-03-18 2025-10-07 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range
US12442998B2 (en) 2022-03-18 2025-10-14 Celestial AI, Inc. Optically bridged multicomponent package with extended temperature range
US12442999B2 (en) 2022-03-18 2025-10-14 Celestial Ai Inc. Optically bridged multicomponent package with extended temperature range
US12191257B2 (en) 2022-07-26 2025-01-07 Celestial Ai Inc. Electrical bridge package with integrated off-bridge photonic channel interface
US12283584B2 (en) 2022-07-26 2025-04-22 Celestial Ai Inc. Electrical bridge package with integrated off-bridge photonic channel interface
US12217056B2 (en) 2023-01-27 2025-02-04 Celestial Ai Inc. Load/store unit for a tensor engine and methods for loading or storing a tensor

Also Published As

Publication number Publication date
CN105684506A (en) 2016-06-15
CN105684506B (en) 2019-04-05

Similar Documents

Publication Publication Date Title
WO2015176289A1 (en) Method and device for controlling traffic of network-on-chip (noc)
Li et al. Learning-aided computation offloading for trusted collaborative mobile edge computing
CN113810233B (en) A Distributed Computing Offloading Method Based on Computational Network Collaboration in Random Networks
Wang et al. Neural network meets DCN: Traffic-driven topology adaptation with deep learning
CN111160525B (en) An Intelligent Decision-Making Method for Task Offloading Based on Unmanned Aerial Vehicle Swarm in Edge Computing Environment
WO2024065903A1 (en) Joint optimization system and method for computation offloading and resource allocation in multi-constraint-edge environment
US11784931B2 (en) Network burst load evacuation method for edge servers
CN103365727B (en) Host load forecasting method in cloud computing environment
WO2019011338A1 (en) Method for determining shortest path and controller
CN114500383B (en) Intelligent congestion control method, system and medium for space-earth integrated information network
WO2017032254A1 (en) Method and apparatus for generating network control policy, and network controller
CN117938755A (en) Data flow control method, network switching subsystem and intelligent computing platform
KR20170100487A (en) Holistic global performance and power management
TWI531187B (en) Noc timing power estimating device and method thereof
Chen et al. Dynamic task offloading in edge computing based on dependency-aware reinforcement learning
JP2017515244A (en) System and method for providing on-site service
CN104580447A (en) Spatio-temporal data service scheduling method based on access heat
Zheng et al. DISCO: Distributed traffic flow consolidation for power efficient data center network
US9262355B2 (en) Controller configured to control timing of access request according to density of burst access and access load
CN108650131A (en) The processing system disposed for multi-controller in SDN network
WO2025118933A1 (en) Lossless-ethernet flow control method and apparatus
CN117640378A (en) Method and system for self-adaptive deployment and resource allocation of micro-service with perceived performance in cloud edge environment
CN112148381A (en) Software definition-based edge computing priority unloading decision method and system
CN108600098A (en) The dispatching method of a plurality of variable path fixed-bandwidth in a kind of high performance network
CN115567466A (en) Time-sensitive traffic online scheduling method and device based on deep reinforcement learning

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14892317

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14892317

Country of ref document: EP

Kind code of ref document: A1