Adaptive Dynamic Shortest Path Search Algorithm in Networks-on-Chip Based on Circulant Topologies

A new pair routing algorithm for transmitting messages in multiprocessor systems and networks-on-chip based on circulant networks of arbitrary dimension is proposed. It allows using all reserve shortest paths in the presence of destructive factors (deadlocks, livelocks, starvation, failures) at the nodes and channels of the communication network. A distinctive feature of the proposed algorithm is the absence of using the routing tables with fixed shortest paths when message is transmitted. It becomes possible to determine the set of the shortest paths for routing due to the relative addresses of destination nodes based on a parametric description of the network. Estimates of the number of reserve shortest paths are obtained, and an effective algorithm for using these paths to prevent dynamic topology changes and network congestions is proposed. To reduce the required memory in networks-on-chip with a circulant topology, we proposed a version of the routing algorithm for two-dimensional optimal circulants. We experimentally found the minimum number of reference nodes (nodes containing mapping tables) for them and estimates of memory for mapping tables, as well as the average path length for the routing algorithm using the reference nodes.


I. INTRODUCTION
Over the past 10 years, the performance of computing systems is no longer so dependent on their maximum clock frequency as on the number of computing cores that fit into a chip. The development of multiprocessor systems-on-chip (MPSoCs) has become a ubiquitous trend and has led to the fact that modern chips can accommodate tens, hundreds or even thousands of processor cores. So, the latest versions of the WSE2 chip from Cerebras can contain up to 850,000 computing cores [1,2], and the project from Esperanto technologies promises 1088 energy-efficient ET-Minion 64-bit RISC-V each with a vector/tensor unit in ET-SoC-1 chip [3]. The operation of such large MPSoCs is not possible without a high-performance communication subsystem, the tasks of which are currently performed by the network-on-chip (NoC). NoCs represent many interconnected levels of abstraction [4], including the router level, the IP core interface level, the data transfer protocol level, the routing algorithm level, the network node connection topology level, etc. Effective implementation of each of these levels affects the performance of the entire network as a whole. This work is devoted to one of the most important levels of NoCs implementation -routing algorithms. The fact is that the routing methods used in local computer networks are not applicable in NoCs primarily due to the inability to store large routing tables in routers [5]. As for routing methods from the field of wireless sensor networks [6]: although they have a number of advantages useful for NoCs, they cannot be used without adaptation to the NoC features. Fig. 1 shows the changes in the average distance between nodes depending on the number of nodes for mesh, torus and various classes of circulant topologies. They clearly demonstrate the advantages of circulant topologies over classical regular ones. The curves for the diameters of the topologies look similar and are, therefore, not shown here. For circulants, the change in characteristics occurs smoothly, regardless of the number of nodes, which cannot be said about mesh and torus topologies. Although they are classified as regular topologies [4], strictly speaking, they are conditionally regular and have the best topological characteristics only for a square form, when the number of nodes is a power of a natural number. Moreover, for a number of cases (for example, when the number of nodes is a prime number), mesh and torus topologies generally degenerate into linear and ring topologies with unsatisfactory characteristics [4], as a result of which they are not shown at all on the graphs. The presence of outliers on mesh and torus plots corresponds to cases where the shape of the topology is very far from square; for example, for . Thus, circulants look like a real alternative to the classical topologies used in NoCs, while the presence of different classes of circulants provides the developer with a field for choosing the appropriate topology option for a specific task. For example, Fig. 1 shows a curve of average distance for the class of multiplicative circulants [10], which are not available for every number of nodes, but have a number of useful properties; the choice between optimal circulants with different dimensions can be determined by a trade-off between hardware costs and required bandwidth; ring circulants [5] (not shown in Fig. 1 because their curves, with the exception of some points, almost coincide with those for optimal circulants) can be chosen to simplify routers and routing algorithm, etc. The idea of using circulant graphs as a topology for a communication subsystem in NoCs appeared recently and became possible due to the significant progress in fieldprogrammable gate array (FPGA) and application-specific integrated circuit (ASIC) chips, as well as the evolution of computer-aided design software (CADs). Currently, there is no need to bind to rigid planar floor planning tiles of NoC area for NoC design, as this is done by automated means. Thus, it becomes possible to move the design of NoC communication subsystem to a higher level of abstraction and use new topological solutions, including circulant graphs [5,8]. Let us define circulant networks. Let , be the set of integers, where . An undirected circulant graph has a set of vertices and a set of edges . The numbers are called generators of the graph, is its order, is its dimension, the degree of a vertex of the graph is if , or otherwise. The diameter of the graph (which estimates the maximum structural delay in the network) is , where is the length of the shortest path between the vertices and . The average distance in the graph is also an important criterion for the functioning of communication networks. It should be noted that circulant graphs of dimensions 2 and 3 are used as topologies of multiprocessor systems [15,20,21], and also as promising topologies of NoCs [5,8]. Modern chips already can have more than 1000 cores [1][2][3]. For the most part, they are still connected by mesh topology, but at the same time (due to the large number of nodes), the distance between nodes is too large, which is to be corrected by global ring connections (for example, over a wireless channel [23,24]). This state of the problem opens up opportunities for applying circulant topologies with dimensions in NoCs. Furthermore, the development of new efficient routing algorithms in circulant networks, which use the shortest paths for information flows routing, is relevant. Work [7] provides an extensive overview of routing algorithms used in NoCs with classical topologies (primarily, mesh and torus) and the problems that arise during routing. The variety of approaches and routing methods suggests that there are still no universal solutions that would satisfy all the requirements of developers. In addition, circulant topologies have their own specificity consisting in their symmetry and regular structure [20,21], which should be taken into account when developing routing algorithms. In [25] the authors proved that the problem of finding the shortest paths using a parametric description of circulants of arbitrary dimension, when the value of is not fixed, is an NP-hard problem. Note that known in the literature pair routing algorithms have been developed for a number of separate families of circulants of dimensions with an analytical description [8,10,[26][27][28][29][30][31], for symmetric 3D networks [32]. For circulants of large dimensions two papers were known earlier. In [10] an algorithm for finding the shortest paths for a family of multiplicative circulants was developed (this algorithm is non-adaptive, since it always uses the fixed shortest path). In [33] a heuristic algorithm of computation of the shortest paths for arbitrary circulant graphs of dimensions was presented. Since the exact solution for finding the shortest paths is related to the solution of Diophantine equations, in [33] the so-called restricted shortest paths were introduced. After testing the algorithm for circulants of dimensions and and calculating about 70000 restricted shortest paths, the authors of [33] obtained the optimal results (the shortest paths) in 85 percent of cases. The advantage of the routing algorithm developed in this paper in contrast to algorithms from [5,8,10,[26][27][28][29][30][31][32][34][35][36] is that it is applicable for circulant networks of a general form and any dimensions . This algorithm is also optimal, since it always calculates the shortest paths, and it is also adaptive in case of destructive factors. Due to the using of the reserve shortest paths, the algorithm gives a possibility to maintain the packet transmission through less-congested paths in case of failures, deadlocks, livelocks, and starvation. The rest of the paper is organized as follows. In Section 2, we present the new algorithm for calculating the shortest path vectors for any graphs from the class of circulant networks and estimate the time complexity of the algorithm. In Section 3, we describe some properties of a set of the shortest path vectors in circulant graphs used further to form mapping tables of the numbers of vertices and shortest path vectors leading to them. An adaptive pair exchange algorithm in circulant networks based on mapping tables is represented in Section 4. In Section 5, a variant of the distribution in circulants of the minimum number of reference vertices containing mapping tables is proposed in order to reduce the required memory in NoCs, and estimates of their number and an increase in the average distance in graphs when organizing pair exchanges are given. In Section 6, we also give an estimation of the number of reserve paths in circulant networks when a node (or a communication line) is deleted.

II. ALGORITHM FOR CALCULATING THE SHORTEST PATH VECTORS
For a vertex of a circulant graph of dimension let us define the shortest path vector from the vertex : ( ) as a vector with coordinates, where , specifies the number of steps (hops) along the edges corresponding to the generator ( ) in the shortest path from to . The ( ) sign specifies the movement direction along ( ). We have ∑ . There is an obvious property of the shortest paths in the circulant graphs: a shortest path between any two vertices of the graph cannot simultaneously contain and for any . Since the circulant is a vertex-transitive graph, , , and it is sufficient to consider only the values ⌊ ⌋ and 0 as the source vertex in pair exchanges. The generalization of the definition of a shortest path vector from source vertex to destination vertex is obvious. For a circulant network of dimension , where ⌊ ⌋, we present an algorithm for calculating the shortest path vectors from one vertex to all the others. The algorithm is based on the BFS procedure. The input parameters of the algorithm are: the description of the circulant network (the number of vertices and the list of generators ) and the number of the source vertex. The result of the algorithm is a list of all the shortest path vectors leading from the initial vertex to all the other vertices of the graph. This list we will call a mapping table of the numbers of vertices (absolute) and shortest path vectors leading to them. Algorithm 1: (Algorithm for calculating the shortest path vectors). Let be the source vertex. It receives the shortest path vector with zero coordinates: , where . At each step, the algorithm adds all the vertices not belonging to ( is a shortest path tree rooted at and partially formed by already checked vertices), adjacent to those vertices from that were added to at the previous step, to already checked vertices. When adding a vertex connected by an edge with a mark with a vertex , the vertex receives all the shortest path vectors from the vertex with the coordinates changed by one (increased by one in absolute value) for the generator . The algorithm terminates when all the vertices of the graph are included in the tree which connects all the vertices of the graph by the shortest paths to . This happens after steps were completed, where is the diameter of the graph. If it is required to find the shortest paths only to the vertex , then the modified version of the algorithm terminates after adding the vertex to . The program for Algorithm 1 in a generalized algorithmic language (whose syntax is similar to that of Python) is given below. The program for Algorithm 1 procedure all_shortest_path_vectors (C, N, sk, source): spv=addSPVneighbor(spv, v, w) return spv Note that the subroutine addSPVneighbor(spv, v, w) allows obtaining all the modified shortest path vectors for the vertex from the neighboring vertex with the coordinates changed by one for the corresponding generator.  . Inside each vertex, its number is indicated; on the right and below of each vertex, its shortest path vector is indicated; on the lines t = 1 and t = 2, the vertices traversed in the first two steps of the algorithm are shown. When estimating the total time complexity of the algorithm, it should be taken into account that each graph vertex is visited once and each its incident edge is viewed from this vertex once. Therefore, the time complexity of the algorithm for a circulant of dimension can be estimated as , and under the condition , the time complexity of the algorithm for calculating the shortest path vectors from one vertex to all the others is of . . The family of 3D-circulants [30] with the maximum number of vertices for any given diameter (Sect. 6, formula (4)) was used as an experimental model of the communication network. Fig. 3 shows the average values of the execution time of Algorithm 1 (a random selection of the source node for 2000 experiments was used).

III. Properties of the shortest path vectors in circulant networks
There are some well-known properties of a set of the shortest path vectors in circulant graphs, which will be used further to form mapping tables and develop an adaptive pair routing algorithm. These properties are generalized in Lemmas 1 and 2. Due to the vertex transitivity of circulants [15], the problem of computing the shortest path between vertices and is reduced to the problem of finding the shortest path between vertices 0 and mod (Fig. 4). So, we have Lemma 1. For any pair source -destination with numbers a set of the shortest path vectors coincides with a set of the shortest path vectors of the pair source -destination with numbers . To prove Lemma 2, we use the following property of circulants: the shortest paths from 0 to a vertex and from 0 to the vertex differ only in signs in front of the generators, that is, in our case, this property is . We can call this property the mirror symmetry of vertices about the "axis" passing through 0 and Now we simply generalize this property for any vertex , drawing this axis of symmetry through and and obtain the result of Lemma 2.

Lemma 2. For any pair source -destination with numbers
, where ⌊ ⌋ , a set of shortest path vectors coincides with a set of shortest path vectors taken with the opposite signs of the pair source -destination with numbers , where . Thus, the symmetry property of circulant graphs implies the following: (1) having the shortest path vector (vectors) from vertex to any vertex , , by simple cyclic transformation (shift), it is possible to obtain the shortest path vector (vectors) for any pair source -destination without reusing Algorithm 1; (2) having the shortest path vector (vectors) from vertex to any vertex ⌊ ⌋ , by changing the signs of the components of the vector (vectors) to the opposite ones, it is possible to obtain the shortest path vector (vectors) from vertex to any destination vertex , which allows cutting mapping tables in half, that is for any vertex , it is possible to store data for vertices with numbers from to ⌊ ⌋ only. As already noted, in conditions of the impact of destructive factors on the communication network, it is important to have reserve shortest paths in the network which make it possible to bypass blocked regions without path length increasing. Further, we will distinguish between alternative shortest paths from to given by different not coincident vectors and reserve (equivalent) shortest paths obtained from one alternative vector and differ in the order of passage of the generators included in the shortest path from to .
For example, in the circulant (Fig. 4) there are two alternative shortest paths from node 0 to node 7. The first alternative shortest path vector contains one path 0 → 13 → 10 → 7 with generators -3, -3, -3. The second vector contains three reserve paths: 0 → 2 → 4 → 7 with generators +2, +2, +3, 0→2→5→7 with generators +2, +3, +2, and 0 → 3 → 5 → 7 with generators +3, +2, +2. The function depends on the graph description and the destination vertex number and requires the further study. Here, we will give only experimental estimates for , namely, the ratio of the number of alternative shortest paths to the number of vertices for the graphs of the 3D-circulants family with the order given by formulas (4).  As studies on the approximation of the obtained dependence have shown, it is inversely proportional to the diameter of the graph ( ). For a given family of circulants, this is explained by the ratio of the number of vertices to the diameter , which determine the presence of alternative paths in the graph and have the estimate to the total number of vertices in the graph of order . The cardinality of the set of reserve shortest paths from vertex to vertex for each individual representative of the alternative paths in can be easily calculated. Let denote the total number of reserve shortest paths from to the vertex to which corresponds the shortest path vector . Since circulant graphs are Cayley graphs of Abelian groups, the value of for the vertex is defined as follows. Consider the case of . In a circulant graph, any permutation of connections along the path from 0 to a vertex where ( ) gives the same path from 0 to Thus, a total number of ( ) different shortest paths from 0 to exist, consisting of steps of type and steps of type This formula is equal to the binomial coefficients. Lemma 3 gives a generalization of the case of to any Lemma 3. In a circulant graph , for any vertex , let be the shortest path vector from to , then is equal to: ∑ ∏ (1) Thus, a compact form of representing the set of shortest paths as a shortest path vector, allows specifying the total set of reserve shortest paths (differing only in the order of passage of the generators) without additional memory costs for storage of reserve paths. Our dynamic approach to the routing algorithm gives a possibility of switching among different alternative shortest paths and makes it more flexible in avoiding network destructive factors. According to Fig. 5, for some source -destination pairs, there may be several alternative shortest path vectors each of which specifies its own subset of the reserve shortest paths. , but the first one has a lower denominator provided Q.E.D. This implies the possible strategy of choosing when routing a packet, such a coordinate of the shortest path vector, decreasing which by 1 preserves the greatest number of reserve paths when moving along the shortest path. This, according to Lemma 4, is the coordinate with the maximum absolute value. If the set of vectors of alternative shortest paths calculated at the node of the source of the message contains more than one vector of paths to , then the choice from is made according to the criterion of the presence of a potentially larger number of possible reserve paths, that is, a vector is chosen having ∑ | | || We will call this strategy the method of flexible descent along the coordinates of the shortest path vector.

IV Adaptive pair exchange algorithm in circulant networks
The process of obtaining the shortest path vectors at all vertices (network nodes) and formation of mapping tables for organizing pair exchanges in the network is as follows. 1) Algorithm 1 is executed in one node with number in which, as a result of the operation of this algorithm, a mapping table between the number of the destination node and the shortest path vectors to it from the source node is formed. In this case (using Lemma 2), it is possible to store only half of the  (2). Note that the mapping table between the number of the destination and the shortest path vectors to it from the source is used only at the stage of generating the message header and is not used during its transmission. The estimation of the required memory for mapping tables grows linearly with the number of nodes in the system. Moreover, the shortest path vector contains the entire set of reserve shortest paths. In addition, we have proposed a method for reducing the number of mapping tables in the system by using so-called reference nodes. This method is indicated in Section 5. Let us consider a routing algorithm that implements message pair exchanges between nodes in multiprocessor systems, including NoCs, given by the communication network topology in the form of a -dimensional circulant graph, . Let it be required to transmit a packet from the node of the data source to a destination node . In the absence of destructive factors at the nodes and communication lines, in the source node, according to the number of the destination node, the shortest path vector between them is taken from the mapping table (or is computed) and is written to the message header. At each transit node (including the source), on the way to the destination, any of the output directions corresponding to a nonzero coordinate of the shortest path vector is selected in accordance with criterion (2) (or randomly), and the shortest path vector is modified by the operation in order to reduce in absolute value the nonzero coordinates of the vector. The modified vector , where only the value of has changed, is written into the packet header which is transmitted further. The end of the routing procedure is the equality to 0 of all coordinates of the vector . The proposed adaptive pair routing algorithm allows using reserve shortest paths and thus increasing the reliability of the structure of the communication network. Below there is a description of a distributed adaptive pair routing algorithm for circulant graphs of dimension obtained using the BFS procedure described in Section 2 in the presence of failures of nodes or communication lines. Algorithm 2: (Adaptive pair routing algorithm) Step 1. The algorithm selects a vector from the set of alternative shortest path vectors at the message source node using the destination number . The choice of the shortest path vector from is made according to the criterion (2).
Step 2. Having the vector ( ) which provides the largest number of possible reserve paths, at each intermediate node, the algorithm chooses the number of such an output direction belonging to the shortest path to the destination which corresponds to the maximum value of the absolute value of the coordinates of the selected vector. Thus, the vector modified by operation (3) specifies the remainder of the shortest path to the destination. In this case, the method of flexible descent along the coordinates of the vector is implemented. The choice of one of the many paths defined by the algorithm can be made with adaptation to the situation on the network. The choice of the number of the output direction can take into account not only the nonzero coordinates of , but also the current states of adjacent nodes and communication lines (failures, deadlocks, livelocks, starvation).
Step 3. The algorithm ends when all the coordinates of are equal to 0. It should be noted, that the estimate of the time complexity of Algorithm 2 is In a simplified version of Algorithm 2, step 1 can be changed as follows: Step 1. The algorithm calculates one vector of the shortest path at the node of the message source according to the number of the destination node . Let us show the implementation of the flexible descent method along the coordinates of the shortest path vector using the example of a 3D-circulant network of diameter 8. Suppose, it is required to transmit a message from 0 to the destination node . Using the destination number , the algorithm calculates the set of alternative shortest path vectors: . Choice of a vector from according to criterion (2) gives the vector . For it, the number of reserve shortest paths to node is ( ) and is the largest among the vectors of At each successive step, the algorithm selects the number of the output direction corresponding to the maximum of the module of the coordinate, modifies the shortest path vector, and puts it in the output queue. As a result of the algorithm operation, we have the following chain of transformations of . The path obtained is marked in red in Fig. 6. Note that if (when choosing the best variant) the coordinates turn out to be equal in absolute value, then the next coordinate is chosen randomly or taking into account the load (deadlocks) of neighboring nodes.

V Reducing the number of nodes containing mapping tables in networks with circulant topology
Along with reducing the diameter and average distance between the nodes for NoC topologies, an important characteristic is the amount of memory and logical resources of the chip required to implement the routing algorithm. In order to reduce the required memory in NoCs with a circulant topology when the pair routing algorithm is running, we consider the possibility of reducing the number of such nodes in the circulant network to a minimum, which should contain the mapping tables. We will call them reference nodes. In this case, the following condition must be satisfied: every node not in reference set must have at least one neighbor in the set of reference nodes. Fig. 4 shows the distribution of reference nodes in the circulant highlighted in red. In order to start the process of sending a message, the source node, if it is not a reference node, must first transmit the packet header to the neighboring reference node. Thus, the diameter of the network during routing increases by one, and the average distance during transmissions also increases. For two-dimensional optimal circulants [8], we considered a version of the routing algorithm using the reference nodes and experimentally found the minimum number of reference nodes for them (Fig. 4). We also obtained estimates of memory and the average path length for the routing algorithm in these networks.
The search for the minimum number of reference nodes for the class of circulant graphs was carried out by us in Wolfram Mathematica 10. Table 1 contains a fragment of the results for two-dimensional optimal circulants with the number of nodes , where . There are two options of routing protocols: 1) when the cardinality of reference nodes set coincides with the number of graph vertices; 2) when the number of reference nodes is less than the number of graph vertices (a possible minimum of number of reference nodes is shown in Table 1). The values for diameters, average distances and required mapping tables memory for the entire network are shown for both options. We can see, for example, for a network with , that the amount of memory for mapping tables is reduced by 4.5 times, and the average distance during routing increases by 14 percent when using 32 reference nodes compared to the case when all 144 nodes have mapping tables. In this article, we do not consider the impact of the algorithm on hardware costs (for example, occupied memory resources (REG) and logical blocks (ALM)), since this is a large task that requires implementation of NoC model algorithm at the router level in HDL and multiple RTL synthesis of models for a different number of nodes and topology options. This is the subject of further research, but even now it is possible to give a comparative estimation with the algorithms already implemented in NoCs [8]. According to Table 1, it can be argued that the proposed algorithm (in the basic version) will consume approximately 1.5 times less REG than the Table routing algorithm from [8]; and in its reduced reference node version, it will consume less memory than the following algorithms: Pair exchange algorithm, Clockwise algorithm, and Algorithm for circulants of type [8, Table 5]. No such conclusions can be drawn based on ALM. The time complexity of the proposed algorithm is at the stage of forming the shortest paths between nodes and at the stage of message transmission in the network. Thus, when transmitting messages in the network, it is comparable with Table routing algorithm and Pair exchange algorithm from [8]. According to Table 3 from [8], it is also comparable with the algorithm from [28] and it is better than the algorithms from [26,33].

VI Estimation of the number of reserve paths in circulant networks with failures
Let us now consider the operation of the routing algorithm in the presence of a single failure of a node (or a communication line). It is clear that if a node fails, then the communication lines adjacent to it also become non-working. We show that due to the commutativity property in a circulant of any dimension when a node (or a communication line) is deleted, the length of the shortest path between two vertices of the graph can increase by at most 2. Let us estimate the increase in the reliability of the network when using the developed routing algorithm that employs reserve paths of circulant topologies. In case of a single failure of a node or communication line, as it was shown, the distance from to node can increase (by at most 2) only if the shortest path contains generators of the same type (or ) for any of the possible . In a -dimensional circulant graph of order and diameter the number of such vertices (call them unreserved) is less than or equal to . These are the vertices with a single shortest path from 0. The number of vertices that have two or more reserve shortest paths from , is , respectively. The total number of vertices in a circulant graph of diameter and dimension [15,20,21] is the following ∑ . Thus, the theoretical estimate of a part of the unreserved vertices of the total number of graph vertices is . For this estimate is attainable [13] and equal to . For circulant graphs of dimension and diameter , the maximum attainable value of was given in [30] and is equal to For a family of 3D-circulant graphs of diameter with the maximum number of vertices given by (4), the number of vertices with one shortest path from 0 can be estimated as or ([37, theorem 12], vertices of type ). Thus, for 3D-circulants, .
Similarly, for a family of circulants of dimension and diameter with the maximum attainable number of vertices, the estimate for the number of vertices of type is [37, theorem 13], and, accordingly, In the general case, for arbitrary , this trend will continue, and tends to 0 fast enough when the diameter of the graph increases. Fig. 7 shows a plot of variations in a part of unreserved vertices with an increase in the order of graphs for 3D-circulants. The theoretical estimate (5) (shown by line) and the estimate for the family of 3D-circulants with the maximum number of vertices obtained during the testing of the proposed routing algorithm (shown by points) coincide. Thus, the proposed algorithm provides necessary freedom to use alternative paths in the event of node failures. Here, we do not consider how the algorithm behaves in deadlock and livelock situations (which are quite likely due to the features of circulants), since this requires modeling the functioning of NoCs using a high-level or HDL model, and this is a separate volumetric task that is not included in the purpose of this work. Nevertheless, it can be argued that the proposed algorithm will be no worse than the classical deterministic algorithms, as it guarantees the shortest paths for the packets to pass. In addition, when a deadlock situation is detected, a group of blocked nodes can be temporarily marked as failed, and this will allow choosing by-pass routes around the blocked section of the network.

VII CONCLUSION
In this paper, an adaptive dynamical pair exchange algorithm for the class of circulant networks of any dimensions and descriptions is developed for using in multiprocessor systems and NoCs. This algorithm is based on the use of a new algorithm for calculating the shortest path vectors with an estimate of the time complexity of (in contrast to for the well-known Dijkstra's algorithm). For the algorithm proposed, estimates for the number of reserve shortest paths and a method for their optimal use in case of dynamic changes in topology and overloads in the network for circulants of any dimension are obtained. In order to reduce the required memory in NoCs with a circulant topology when the pair routing algorithm is running, variants of the distribution in two-dimensional circulants of the minimum number of reference nodes containing mapping tables are proposed, and estimates of their number, the memory for mapping tables, and an increase in the average path length in graphs for the routing algorithm experimentally found. The proposed algorithm can be used in the future as a basis for the development of routing algorithms in any subclasses of parametrically described regular graphs employed as models of communication networks, for example, for the graphs introduced in [14 -19], which differ from each other in the degree of symmetry of the graph and may be of interest as possible NoC topologies.