Temperature grade-based advanced stepped buffer area adjusting method
Technical Field
The invention mainly relates to the field of on-chip networks of microprocessors, in particular to a temperature grade-based advanced stepped buffer area adjusting method.
Background
With the rapid development of the integrated circuit manufacturing process following moore's law, the on-chip integration level increases exponentially, and the power consumption of complex integrated circuit chips such as microprocessors is larger and larger, which is already close to the limit of packaging and heat dissipation, not only increasing the production and operation and maintenance costs, but also bringing great challenges to the stability of the chips. Three-dimensional network-on-chip (3D-NoC) technology reduces the length of global interconnect lines and provides greater bandwidth with lower power consumption. However, since the shortening of the interconnection lines and the increase of the flow rate generate a large amount of heat, the arrangement of the cores is more compact in order to reduce the area, delay, etc., and heat dissipation is more difficult due to the stacking of blocks and greater power density, resulting in higher power density, thereby causing more serious temperature problems. At the same time, the longer heat dissipation paths and the different thermal conductivities between different layers result in an unbalanced distribution of temperatures even for a network with balanced flow distribution. Temperature problems can affect system performance and increase leakage power consumption, which in turn acts on temperature and further causes more serious temperature problems, so most microprocessor manufacturers turn competition for a CPU main memory to research on the whole system structure, and balance between performance and power consumption is achieved.
In a three-dimensional network on chip (NoC) architecture, different interconnection modules are connected through routing nodes, and a NoC with a three-dimensional Mesh topology is embedded into each node, and is responsible for being connected with adjacent nodes, each router has seven ports, namely an east (E), a south (S), a west (W), a north (N), an UP (UP), a DOWN (DOWN) and a Local (LO), each port is provided with a corresponding input buffer, and the local ports are connected with processing nodes. In NoC design, the size of a buffer directly affects the transmission delay of a data packet, and therefore, it is one of the hot spots in NoC research to reasonably allocate the buffer resources of nocs with severe resource limitations.
In order to solve the temperature problem, some methods for managing the temperature in time and space are generally proposed and applied, and the most important of them are dynamic temperature management and temperature-aware adaptive routing. For the method adopting dynamic temperature management, the effectiveness of the network can be greatly reduced, the lower throughput rate is caused, the regular topological structure can become irregular, the flow can be congested at a killing node, the transmission delay is increased, and the performance and the throughput rate of the whole system are greatly influenced; for some routing adjustment algorithms, most of previous work only considers the temperature problem or only considers the traffic problem, the traditional selection strategy selects a path based on the temperature problem, which causes a local congestion problem, causes great imbalance of traffic and thus imbalance of temperature, and selects a path based on traffic information, which causes no awareness of potential hot spots, thereby causing great performance impact.
In conclusion, the combination of the dynamic temperature management method and the adaptive routing algorithm becomes a good method for solving the problem of large-scale 3D-NoC. In this respect, the current latest technology is a simple dynamic buffer congestion sensing routing technology, which dynamically adjusts and controls a buffer according to a ratio of temperature increase rates between adjacent routes, adopts a routing algorithm combining a ring congestion sensing route and a vertical route in the aspect of routing, and adopts a method based on the buffer utilization rate in the aspect of selection strategy to perform path selection.
However, the above method still has some problems, for example, the regulation and control of the buffer area according to the temperature increase rate ratio adopted by the technology is not very accurate, and only considering the temperature increase rate ignores the problem of temperature base, which causes erroneous regulation and control; meanwhile, due to the adoption of the comparison of the temperature increase rates between adjacent routes, the frequent regulation and control of the temperature increase rates can be caused by the characteristics of the temperature increase rates, and a large amount of power consumption can be caused. The vertical routing method adopted by the technology concentrates a large amount of transmission on the bottom layer, so that although the temperature is reduced, the possibility of reducing the temperature is caused, a large amount of congestion is caused, and the transmission delay is increased.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: aiming at the technical problems in the prior art, the invention provides the temperature grade-based advanced stepped buffer area adjusting method which is simple in principle, easy to implement, low in power consumption and high in accuracy and flexibility.
In order to solve the technical problems, the invention adopts the following technical scheme:
a temperature grade-based method for adjusting a lead stepped buffer area comprises the following steps:
s1: calculating the temperature grade; obtaining the temperature of the current node, predicting to obtain a temperature value at the next moment, obtaining the change speed of the current temperature, and further obtaining a temperature value after t time; dividing the temperature into a plurality of grades, and giving a temperature grade indicated value when the temperature value after t time reaches a certain grade;
s2: and sending the temperature grade indicated value as a grading indicated signal to a peripheral routing node connected with the current node, and adjusting the size of the buffer area according to the grading indicated signal.
As a further improvement of the invention: the specific steps of step S1 are:
s101: obtain the current temperature TnowPredicting the temperature T at the next timepreTime interval of tkFrom this, the rate of change in temperature is calculated as (T)pre-Tnow)/tk;
S102: combining the current temperature with a given time period T, and calculating the temperature T after the time Tt=Tnow+t*( Tpre-Tnow) /tk;
S103: the temperature is divided into several grades, and when the temperature reaches the grade requirement, a temperature grade indicated value is given for the next-stage buffer area regulation.
As a further improvement of the invention: in step S2, when the temperature increase reaches a set level, the corresponding buffer area is adjusted to be small; when the temperature is reduced and is lower than the set level, the corresponding buffer area is adjusted to be larger so as to achieve the step control of the buffer area.
As a further improvement of the invention: in step S2, a temperature level signal is transmitted between the nodes; after the corresponding temperature grade signals are obtained, each node and the adjacent nodes in all directions are connected by a temperature grade indicating signal wire and used for transmitting the temperature grade signals.
As a further improvement of the invention: the node transmits a temperature level indication signal in one direction to a temp _ level _ neighbor port in the corresponding direction of the next route through a temp _ level port and a signal line temp _ level _ to _ d, wherein d refers to the direction; the signal value of each route passing through the temp _ level _ neighbor port in each direction adjusts the buffer size in each direction.
Compared with the prior art, the invention has the advantages that: the temperature grade-based advanced stepped buffer area adjusting method can conveniently obtain the temperature grade of the current node, and adjust the peripheral route relative to the buffer area in the direction of the current node according to the temperature grade, has the advantages of convenient adjustment, low power consumption and good temperature control effect, can finally accurately control the size of the buffer area, reduces frequent and useless adjustment and control, reduces the total power consumption generated by the adjustment and control, and increases the strength and flexibility of the adjustment and control.
Drawings
FIG. 1 is a schematic overall flow diagram of the process of the present invention.
FIG. 2 is a flow chart of the calculation of temperature levels in a specific application example of the present invention.
FIG. 3 is a flow chart illustrating the buffer adjustment performed in the embodiment of the present invention.
Fig. 4 is a schematic diagram of a routing buffer in a specific application example of the present invention.
Detailed Description
The invention will be described in further detail below with reference to the drawings and specific examples.
The buffer referred to in the present invention refers to an input buffer of a route, which is used to buffer flyings entering the route, and wait for a series of subsequent operations such as route calculation and switch allocation. The invention provides an adjusting method based on the structure and the function.
As shown in fig. 1, the method for adjusting a leading step buffer based on temperature grade of the present invention comprises the following steps:
s1: calculating the temperature grade;
acquiring the temperature of the current node by using a sensor, acquiring a temperature value at the next moment according to a prediction algorithm, and further acquiring a temperature value after t time according to the change speed (temperature change rate) of the current temperature obtained by calculation; the temperature is divided into a plurality of grades, and when the temperature value after t time reaches a certain grade, a temperature grade indicated value is given so as to facilitate the regulation and control of a buffer area at the next stage.
Namely: as shown in FIG. 2, the current temperature T is obtained by the sensornowUsing a simple prediction method to obtain the temperature T at the next timepreTime interval of tkFrom this, the rate of change in temperature is calculated as (T)pre-Tnow)/tk(ii) a Combining the current temperature with a given time period T, and calculating the temperature T after the time Tt=Tnow+t*( Tpre-Tnow) /tk(ii) a Meanwhile, through a series of researches and experiments, the temperature is divided into a plurality of partsAnd grade, when the temperature reaches the grade requirement, giving a temperature grade indicated value so as to facilitate the next-stage buffer area regulation.
S2: and sending the temperature grade indicating value (grading indicating signal) into a peripheral routing node connected with the current node, and adjusting the size of the buffer area according to the temperature grade indicating value (grading indicating signal).
When the temperature increases to certain levels, the buffer area is adjusted to be small according to requirements; when the temperature decreases below some level, the buffer is adjusted up as required to achieve a step control of the buffer so that fewer packets pass through the hot route; the packet is accumulated in the stack buffer part of the overheating route, and the packet is not overheated due to the flow of the packet because the heat is generated by the flow of the packet, so the burden of the overheating route is not increased, and the effect of simultaneously changing the overheating route into the congestion route can be achieved, thereby facilitating the subsequent route selection.
In the above process, a temperature level signal needs to be transmitted between the nodes; that is, after the corresponding temperature level is obtained, each node and each direction-adjacent node are connected by a temperature level indicating signal line for transmitting a temperature level signal. For each direction, as shown in fig. 3, the temperature level indication signal in the direction is transmitted to the temp _ level _ neighbor port of the next route corresponding to the direction through the temp _ level port via a signal line temp _ level _ to _ d (d indicates the direction), and the size of the buffer in each direction is adjusted by the signal value of each route passing through the temp _ level _ neighbor port in each direction.
In specific application, each router has seven ports and corresponding input buffers, but a local port is not considered here, a routing algorithm is adopted in the vertical direction, and will be described below, only four ports of east, west, south and north are considered here, as shown in fig. 4, the relationship between a routing node and its peripheral nodes is taken as an example, when transmission is performed, if 21 is not full, a flyer can be stacked, the output direction is obtained according to a series of rules and calculation, and meanwhile, transmission is performed according to the first-in first-out rule when the flyer can be transmitted. When the temperature at the time T of obtaining the node a is greater than the temperature limit 1, for the H route, the temp _ level _ neighbor signal in the north direction is T1, so the buffer area 21 in the north direction is changed to max _ buffer _ size-2 _ T1 according to the size of T1, so as to reach the condition that fewer packets pass through a, control the temperature of a, and congest the packets in the part a, change the overheated area into the congested area, thus when bypassing the congested area, also bypass the overheated area, if the temperature is still increased, when the temperature at the time T is predicted to reach T2, change the buffer area to max _ buffer _ size-2 _ T2, and if the temperature at the time T is decreased to be lower than some value, the value of the buffer area is increased relatively to be decreased, and the principle is the same as that in the direction a.
The simple judgment according to the temperature can cause the situation that the temperature is high and the change rate is low or the temperature is low and the change rate is high, and the simple judgment according to the change rate can cause the problems that the temperature is not high because the temperature base number is low or the temperature is overhigh because the temperature base number is high although the change rate is small, although the change rate is large. According to the temperature grade-based advanced stepped buffer area adjusting method, a method combining the current temperature and the current temperature change speed is adopted, the temperature grade obtained according to certain calculation is used as the basis of adjustment and control instead of simple temperature or temperature change rate, so that errors or redundant adjustment and control caused by the problems can be effectively avoided, and the accuracy of adjustment and control is improved.
Meanwhile, the temperature is changed in real time, and certain parameters of a certain node are adopted for calculation control instead of control of comparison relation with surrounding nodes, so that the temperature control is not influenced by the surrounding environment temperature, and the condition that the relative temperature of the node is low and the generated overheated node is not regulated and controlled due to overhigh surrounding temperature is prevented, and the burning or temperature imbalance is caused; or the ambient temperature is too low, which causes the relative temperature of the node to be high and the generated too low node to be regulated, resulting in redundant regulation and resource waste. In addition, frequent ratio changes can be generated by comparison and frequent regulation and control are needed, and the size of the buffer area can be accurately controlled by adopting a method of performing stepped regulation and control when the temperature is higher or lower than a certain value, so that frequent and useless regulation and control are reduced, the total power consumption generated by regulation and control is reduced, and the regulation and control strength and flexibility are increased.
The above is only a preferred embodiment of the present invention, and the protection scope of the present invention is not limited to the above-mentioned embodiments, and all technical solutions belonging to the idea of the present invention belong to the protection scope of the present invention. It should be noted that modifications and embellishments within the scope of the invention may be made by those skilled in the art without departing from the principle of the invention.