A High Static Performance Hierarchical Three-Dimensional Shifted Completely Connected Network

In recent years, there has been a significant shift toward the adoption of the “Internet of Things (IoT)” era, in which vast amounts of data are collected and processed, and Artificial intelligence (AI) is used to make critical choices. When acting in real-time, it is vital to use devices with a lot of computing power. MPC (Massively Parallel Computer) Two-dimensional (2D) design systems are the most powerful computers available. Unfortunately, they can’t meet the need for the advanced computing operation required by many applications. As a result, it is critical to invest in developing high operational capacity systems that will meet the current computational power consumption demands. This paper developed the architecture of the two-dimensional Shifted Completely Connected Network (2D-SCCN) and proposed a three-dimensional (3D) network to achieve greater capacity and performance. The shortest path protocol on three-dimensional Shifted Completely Connected Network (3D- SCCN) was established, tested by computer simulator, and compared based on “shortest diameter”, “shortest average distance”, “lowest cost”, “moderate bisection width”, and “high arc-connectivity” among other characteristics. As a result, “3D-SCCN” was the most efficient method of transmitting a message between two nodes, increasing the system’s real-time response capability.


I. INTRODUCTION
The applications of the Internet of Things (IoT) significantly affected our lives by bringing tremendous changes to the activities of companies and individuals. Advanced sensors, innovative computing capabilities, and wireless networks equip billions of everyday objects. This abundance has given rise to industrial automation, smart cities, the applications of smartphones, and developed health care systems [1]. There is a rise in adopting IoT technologies in business due to the high number of IoT-connected devices [2]. IoT could be the motivator of business digitalization to improve existing business The associate editor coordinating the review of this manuscript and approving it for publication was Taehong Kim . operations and individuals' everyday routines [3]. Various devices are connected to the internet and exchanging data by IoT technology. Analyzing this technology's collected data will help scholars understand and predict people's behavior [4]. The conventional computers and processing application software cannot analyze and deal with this too large data that entered our language with the term Big Data [5].
The Parallel computing strategy is the best solution for big data problems because it can partition the entire computational task into sub-tasks and process them in parallel computing nodes. Then the parallel models will monitor the process and predict the quality of applications. In the era of big data, and due to the overflow in data volume, numerous parallel algorithms and distributed processing technology have been adopted by individuals to improve the data processing efficiency. Parallel computing for large-scale industrial processes with big data is a good strategy that relieves the computational pressure by dividing the large tasks into small tasks [6]. Many works related to parallel computing have been established, for instance, to monitor the big data process; parallel principal component analysis was developed [7]. In addition, for quality prediction development with big process data, a distributed parallel hierarchical extreme learning machine was developed [8].
Many low-cost devices are connected to IoT, which can communicate via a mixture of communication protocols. These low-cost IoT devices can understand human-computer input, usually via distant control. These low-cost devices participated in the rapid rise in the number of connected devices to IoT. However, the low price of these intelligent and perceptive devices increased the difficulty of protecting them from cyber risks. Artificial intelligence (AI) has been used to build modern cybersecurity by analyzing user behavior using intrusion detection systems. Although the effectiveness of using cybersecurity systems-based AI, the connected IoT systems are targeted by adversaries by using AI. The low price and the low memory of the IoT devices made them more exposed to cyber-attacks. In this context, supercomputers can analyze data in parallel and in short periods that can be used to find subtle relationships across systems, across users, across geolocations, which indicate an early warning of a potential cybersecurity attack [9].
The semiconductor industry overcame the obstacles and succeeded by allowing more transistors to be packed onto a single silicon chip, resulting in the creation of the system-onchip (SoC) [10]. Many interconnect issues arose due to the functional diversity expected by the electronics market; these issues arose as a result of technology scaling and the integration limitations of systems-on-chip (SoC). As a result of these challenges, a mission was formed to replace traditional systems design paradigms. As a result, Network-on-Chip and 3-D integration have been presented as potential solution to overcome these issues and minimize the complexity of SoC architecture [11]. The use of 3D integration circuits (ICs) has advantages in enhancing computer system performance by lowering the length of global links. It also allows for the integration of diverse technologies [12], [20].
NoC (Network-on-Chip) is a promising answer to the problems that have plagued traditional bus-based systems. The 2D Network-on-Chip architecture platform is simple and scalable, giving increased bandwidth and performance. However, the complexity of future applications has increased, necessitating new network designs to ensure sufficient bandwidth for all transactions between memories and cores and improve communication between cores on the same Chip. As a result, one of the proposed methods to tackle these challenges is to take advantage of the advantages of three-dimensional integrated circuits (3D-IC) [13], [14]. Because of the additional third dimension compared to the two-dimensional arrangement, research on the 3D-IC has demonstrated that these networks can boost the packing density of the network-on-chip. Furthermore, networks based on the 3D paradigm can lower average interconnect length, resulting in superior performance than networks based on the 2D paradigm. Furthermore, the network-on-wiring chip's complexity will be reduced, resulting in lower interconnect power consumption [15], [16]. 3D-ICs are considered an appealing solution for scaling up the size of interconnection networks to overcome interconnecting scalability constraints. Multiple device layers are layered together on the 3D Chip, with vertical linkages tunneling between them. The advantages of switching from standard 2D to 3D networks are listed here [15], [17], [18]: 1) 3D design reduces the number of global interconnects leading to increasing the system performance. 2) 3D design provides a higher packing density and a smaller footprint due to the additional third dimension compared to the 2D networks. 3) 3D design reducing the average interconnect leading to improve performance of the system. 4) 3D design decreasing the power consumption due to the reduction of the total wiring length. 5) 3D design supporting the realization of mixedtechnology chips. The research community proposed 3D networks to take advantage of their properties in creating MPC systems because of these advantages of 3D networks over 2D networks. Many MPC systems based on 3D topology have been constructed in the literature. As a result, the paper discusses the 3D design of SCCN in this study to improve the network's capability compared to either recently proposed networks or those employed in the industry. Furthermore, the goal of the SCCN 3D design is to introduce a potential network for a high-performance MPC system.
When comparing the performance of 2D-mesh, 3D-mesh, 2D-torus, and 3D-torus networks, it was discovered that the 3D networks outperformed the 2D networks. Furthermore, various 3D hierarchical interconnection networks (3D-HINs) have been proposed in the literature, with superior outcomes to 2D networks. As a result, the hierarchical 3D paradigm of SCCN suggested in this research uses 3D architecture to tackle challenges while using 3D designs constructed from a traditional interconnection network such as 3D-mesh and 3D-torus in industry. 3D-SCCN is projected to outperform these networks. The 3D structure of SCCN was constructed using the 2D shifted connected network(2D-SCCN) that we previously introduced [19].
Apart from this section, the remaining part of this paper dwells on multiple levels of the 3D-SCCN connected hierarchically, with each advanced level comprising several nodes higher than its predecessors. Section 2 presents the architecture of the BM-Level, the 3D-NoC Level, Level-2 of the 3D-SCCN, and Level-3 of the 3D-SCCN. Section 3 presented the node addresses of the proposed network. Section 4 introduces a routing algorithm for the proposed network. And lastly, Section 5 presents the analysis of the static network VOLUME 10, 2022 performance of the 3D-SCCN. The scope of this paper is to present the architecture of different levels of 3D-SCCN and to evaluate the static network performance parameters of this network.

II. RELATED WORK
Network on Chip (NoC) is the state-of-art approach to connecting multiple processing cores placed in a single chip divided into regular tiles. Each tile comprises a processing element (PE) or IP core and network router. NoC has input and output devices, including memory, modules, and processors. The PE function is to communicate with the other PEs and performs computation. The main components of NoC are routers, network adapters, and links [20].
The four-level Open Standard International (OSI) is commonly used in computer networks and used by NoC. The message is inserted into the NoC by the PEs in the Application/ Presentation layer, and it breaks into packets by the network adapter in the Session/Transport layer. The network layer route the packet flits from the source node to their destination, and in the Data/Link layer, flits are divided into physical units and sent through the links [21]. The present design model for multi-core architectures is the NoC technology which is also applicable and suitable for 3D integration technology. The advent of 3D integration technology has guided to new design revolution for on-chip interconnection. Active devices are placed in multiple layers, one above the other in 3D integration and connected vertically by Through-Silicon Vias (TSVs). 3D NoCs proved their superiority over the 2D NoCs due to the noticed improvement in system performance [22]. 2D networks structures are used as the base for creating the 3D topologies by extending the planar structure of 2D networks into 3D networks [20].
The number of cores must be increased to improve the performance of the multiprocessor system-on-chip (SoC). Replacing the bus-based system that has a limitation of bandwidth by NoC offered a scalable and alternative way for communication [23]. However, increasing the number of cores on the chip will increase the length of the flat interconnect. Therefore, using a three-dimensional (3D) network-on-Chip is the alternative option to reduce the flat interconnect and increase the network throughput; also, it decreases power consumption and latency. Many heterogeneous circuits are stacked vertically and connected by TSVs in the 3D integration network [24]. TSVs connect various layers, and due to the short distances, the network performance is better with low delay, low power, and high bandwidth communication channel.
The routing algorithm has a significant impact on the performance of the 3D NoC [25]. Thus, it is challenging to develop an optimal routing algorithm for the topology. The characteristics of the acceptable routing algorithm must be designed to provide high throughput, low latency, no congestion, no deadlock, and fault-tolerant ability [26].
Diverse routing algorithms were introduced for 3D NoC, for instance, an algorithm for 3D-mesh based NoC was introduced by Ebrahimi et al., (2014) [27]. This algorithm was designed to distribute the unicast and multicast traffic. Also, an efficient routing algorithm Quadrant-based XYZ DOR was introduced by Khan and Ansari (2011) [28] for 3D Asymmetric Trous. Ansari et al., (2016) presented a modified quadrant-based routing algorithm for 3D torus NoC with reduced vertical links. This algorithm is based on dividing the space into various quadrants and considering the path that offers the shortest distance to connect two nodes [29]. Jain et al., (2017) proposed a 3D mesh NoC designed by VHDL programming language and synthesized in Xilinx ISE 14.2 as software tools and simulated in ModelSim 10.1. The communication inside the network was verified based on the look-ahead XYZ routing algorithm [30]. Bose et al. (2016) presented Split Tree Architecture (STA) as a 3D NoC architecture built based on butterfly fat-tree (BFT) topology, which is low latency and highly scalable network. The network improved the latency over mesh, torus, butterfly, and flattened butterfly. It also has a better network diameter over mesh and torus. In addition, when STA was compared to 3D BFT, it showed a performance improvement of 19−78%, 2−42%, 0.2−0.6%, and around 20%, for average latency, average acceptance rate, minimum acceptance rate, and average hop count respectively [31].
The routers in the NoC are placed by various network topologies such as star, fully connected, fat tree, bus, mesh, torus, and ring [32]. Various 3D designs for NoC were presented based on different topologies. Therefore, in this paper, the two-dimensional Shifted Completely Connected Network (2D-SCCN), which was introduced in previous work [19] is used to arrange the routers inside the network-on-chip. 2D-SCCN in its base module has six nodes connected completely, and the size increased to 24 nodes to build the 2D-NoC network. Multiple 2D-NoC networks are connected hierarchically to create the 3D design of SCCN.

III. ARCHITECTURE DESIGN
Increasing the number of computational nodes in the MPC system is essential for building a high-performance system. Many conventional and hierarchical interconnection networks (HINs) have been proposed recently to satisfy the high demand for computational power. Unfortunately, the conventional networks showed poor performance with a high number of nodes. However, HINs are affordable, fault-tolerant, proficient in reducing cost and power consumption [41] and they work better with a high number of nodes. However, they are still under monitoring and examination in the industry.
In this section, the paper discusses the structural design of 3D-SCCN, which was built based on a proposed topology composed of six nodes. The higher levels of this network will be connected hierarchically in a three-dimensional (3D) style. The size of this network will be increased starting from the Basic module (BM) to compose higher-level networks.

A. BASIC MODULE (BM)
In an earlier study, we presented the BM of 2D-SCCN as a completely connected network composed of 6 nodes. The benefits of using this design are that it exploits the benefits of these networks, which positively impact providing short network diameter, reducing latency, and reducing the cost by avoiding the use of switches and routers to forward the packets. In addition, connecting six nodes inside a chip provides a particular shape of the 2D-SCCN to place it easily inside the chip. The structure of the BM Level is shown in Figure 1(a). This level is composed of 6 nodes and five bidirectional links. Each node traverses only one hop to send a packet to another node, increasing the efficiency of this network.
Every six nodes assembled in one set to work as a group while it will be connected to (2 × 2) groups to create the NoC level of the 2D-SCCN. This is built based on the hierarchical interconnection of (2 × 2) BMs based on shifting the binary digits of each node to the left or the right and is controlled by the distance between the groups, this mechanism discussed in previous work [33]. Figure 1(b) shows the structural design of the NoC Level of the 2D-SCCN.

B. CHIP LEVEL NETWORK
2D-SCCN has shown promising results compared to other networks; however, to increase this network's effectiveness and examine its preeminence, the research presents the 3D network. The 3D design used the proposed topology in Figure 1(a)(b)as a basic module to be connected in three directions X, Y, and Z. This will increase the number of processing elements (PEs) of this network. Furthermore, the BMs of the 3D-SCCN will be connected hierarchically in a 3D manner to produce higher levels networks. This section is dedicated to describing the structure of the 3D-NoC level of the proposed network.
The 3D-NoC level is composed of the hierarchical interconnection of the BM-Level network in three directions as shown in Figure 1(a) and (b). The hierarchical interconnection of multiple BMs occurs through free ports working as gate nodes to connect different BMs to create the higher levels of the 3D-SCCN. Figure 1(a) and Figure 1(b) together composed the BM of the 3D-NoC. Figure1(a) illustrates the BM-Level of the 2D-SCCN; each node in this level has 5 links for the interior connections. In contrast, an exterior link emanates from each node for higher-level connectivity. This implies a free port in each node at this level for the higher-level connectivity. Thus, the number of free links is 6 free ports with their associated links. As a result, as shown in Figure 2, some of these free ports are used as gate nodes to connect each BM of the 2D-SCCN to other BMs in three directions X, Y, and Z. Besides, each BM of the 2D-SCCN has 5 exterior links emanating from 5 free ports to connect each BM to other BMs in the X, Y, and Z directions. These free ports and their associated links are divided as three links for X and Y connectivity to create the NoC of the 2D-SCCN which is shown in Figure 1(b), and two links to connect the BM of the 2D-SCCN to the correspondence BMs in the lower and the higher layers in the z-direction to construct the 3D-NoC network of SCCN. Each link is chosen as a bidirectional link to send data in two directions between any two nodes to reduce the total number of links in this network.
As shown in Figure 2, there are four layers of nodes in the z-direction, while each layer has four groups of nodes connected in x and y directions. To build the 3D-NoC network, the total number of links to connect four groups of nodes (each group has six nodes) in X and Y directions are 6 links. While there are 8 links are emanating from 8 gate nodes to connect the nodes in the z-direction.
A close description of the architecture of the BM-Level of the 3D-SCCN is in Figure 1 The 3D-NoC Level of SCCN will be used as a BM to build an MPC system based on a 3D paradigm. This level is composed of the hierarchical interconnection of multiple 2D-NoC networks in X, Y, and Z directions to construct a (2 m × 2 m × 2 m ) network. This implies a (2 m × 2 m ) 2D-NoC connected in X, and Y directions, where 2 m 2D-NoC in the x-direction and 2 m 2D-NoC in the y-direction. Besides, it has a 2 m 2D-NoC in the z-direction. In this section, we will consider that m = 1 in x and y directions. However, we will assume m = 2 in z-direction. Thus, the total number of the 2D-NoC networks in x-direction will be 2, and in the y-direction, there is also another 2. In contrast, in z-direction will be 4 networks. As a result, the 3D-NoC Level of SCCN is a (2 × 2 × 4) network.
There are two groups of nodes in each direction of x and y. Thus, the total number of groups in the x and y directions is 4, and each group has 6 nodes. Therefore, the total number of nodes in the x and y directions of 3D-NoC is calculated by Equation (1).
By considering m = 1 in both directions x and y and the total number of nodes in the BM of 2D-SCCN are 6. Substituting these values in Equation (1) will provide the total number of nodes in the x and y directions of 3D-NoC of SCCN N x y = 6 × 2 1 × 2 1 = 6 × 4 = 24. That means the total number of nodes in the x and y directions of the 3D-NoC are 24 nodes.
Connecting the BMs of SCCN using vertical links in z-direction means that 24 nodes in x and y directions will be repeated N number of layers in the z-direction. We have assumed that m = 2 in the z-direction; therefore, these nodes will be repeated 4 times to compose the 3D design of SCCN. This will create 4 layers of nodes connected through vertical links. As a result, the total number of nodes in 3D-NoC is determined from Equation (2).
N refers to the total number of nodes in 3D-NoC of SCCN, BM n is the total number of nodes in the BM of 2D-SCCN, and it equals 6, and XY BMs is referring to the total number of BMs (BM of 2D-SCCN) in x and y directions, and it equals 4. Finally, Z BMs refers to the total number of BMs (BM of 2D-SCCN) in the z-direction, and it equals 4. As we mentioned above, the 3D-NoC Level of SCCN is a (2 × 2 × 4) network which means there are 2 BMs (BM of 2D-SCCN) in the x-direction, 2 BMs (BM of 2D-SCCN) in the y-direction, and 4 BMs (BM of 2D-SCCN) in the z-direction. By substituting these values in Equation (2) the research obtain the total number of nodes in 3D-NoC Level of SCCN which equal to N = BM n × XY BMs × Z BMs = (6 × 4 × 4) = 96 nodes. From Figure 2, we summarize the architecture of the 3D-NoC Level of SCCN, and this network is composed of the hierarchical interconnection of multiple BMs (BM of 2D-SCCN) in three directions. The hierarchical interconnection of these levels guarantees a large-scale network with better performance, in addition, it is a cost-effective way to expand the network size. Figure 2 shown that the 3D-NoC Level comprises four layers stacked together with vertical links tunneling through them. Each layer of these 4 layers contains 4 groups of nodes; each group is a BM of the 2D-SCCN with 6 nodes. Therefore, in each layer, there are 24 nodes. The groups are connected in x and y directions by 6 global wires. The connectivity between these groups is based on the circular-shifting mechanism proposed in previous work. In Figure 2, two vertical wires are emanating from each group to the correspondence groups in the lower and the higher layers. Therefore, there are 8 wires used to connect between the upper and the lower layers to construct the 3D-NoC design of SCCN. Besides, in Figure 2, long wrap-around links emanate from the edge layers to connect each group in the first layer to the correspondence group in the last layer. The benefit of using such wires is to reduce the distances between the edges of this network. This will increase the speed of data exchange between any two nodes and improve the system's actual performance.
In this paper, we considered 3D-NoC of SCCN is a (2×2×4) network to keep the shape of the proposed 2D-NoC Level network. Each layer of the 3D-NoC level is a 2D-NoC network connected in the z-direction to compose multiple layers to build the 3D-NoC level. From Figure2, we noticed there is only one free node available in each BM for higherlevel connectivity; this implies in each layer, there are 4 free nodes. Therefore, in 4 layers, we have 16 nodes available to construct the 3D-SCCN. However, if we need to increase the size of 3D-SCCN, we have to increase the degree of this network to 7 by allowing an additional link to emanate from each node for higher-level connectivity. This will improve the performance of this network by providing extra free links to construct higher networks of 3D-SCCN, and it will decrease the distances between the nodes and mitigate the network congestion and latency. Besides, it allows increasing the value of q, which refers to the inter-level connectivity of this network to reach the maximum level. However, in this study, the research considers the minimum inter-level connectivity. Expanding the size of the interconnection network by increasing the number of nodes is taking the research community's attention. This has an impact on increasing the number of computational ports leading to an increase in the capability of MPC systems. Therefore, in this section, a higher level of 3D-SCCN with a large number of nodes will be proposed based on the hierarchical interconnection of the immediate lower level. Thus, to expand the size of the 3D-SCCN, the 3D-NoC level will be considered as a basic module (BM) of the next higher level, which is named Level-2 of the 3D-SCCN or 3D-level-2 network.
Multiple 3D-NoC networks will be connected hierarchically through free ports available in the 3D-NoC and prepared for the higher-level connectivity, the architecture of the 3D-NoC is illustrated in Figure2. The creation of a higher level from the 3D-NoC level will occur through the available free ports. As shown in Figure 2, the node degree of the 3D-NoC level is 6; however, there is a node in each group of this network that has a degree of 5 which means only one port available for the higher-level connection in each group. In each layer in the z-direction, we have 4 groups of nodes connected in the XY-plane. Therefore, the number of free ports in each layer is 4. Thus in 4 layers, there are 16 free ports. The total number of the free ports in the 3D-NoC level can be obtained from Equation (3).
Here, m = 2 p where m and p are positive integer numbers, and m refers to the total number of nodes in the z-direction of this network.
The free ports in the 3D-NoC Level of SCCN are available for higher-level connectivity. However, to increase the performance and connectivity of the BM of the 3D-Level-2 network of SCCN, the paper increases the node degree of this level to 7. This implies more free ports for higher-level connectivity will be available to allow us to use more than one link from each group to create the advanced levels of this network. This will lessen network congestion and save time and provide extra paths to deliver the message to its destination. This section will consider the connectivity by using only one link. And the gateways for the higher connection are to be in one group of nodes as shown in Figure 3. This aims to decrease the distances between the nodes, especially when the message passes from one BM to another BM. This will help the message to change the direction from left, right, north, and south easily by traversing only one hop. This will decrease the distances and deliver the packet faster to its destination. Therefore, the number of free ports in the BM of the 3D-Level-2 network of SCCN will be increased based on Equation (4).
Here, BM n = 6 and it refers to the total number of nodes in BM of the 2D-SCCN, XY BMs refers to the total number of nodes in XY-plane, and Z BMs the total number of nodes in the z-direction. By substituting these values in Equation (4) we will obtain the available free ports in the BM of the 3D-Level-2 network of SCCN after increasing the node degree to 7. Thus, Figure 3 illustrates the lower part of the BM of the 3D-Level-2, and it shows the gateways to exchange data between the different directions in the 3D-Level-2 network. All gateways are chosen to be in the group(0) of level(0) as shown in Figure 3, these nodes send data in XY-plane in 4 directions. Therefore, the free port in a node (1) in the group (0) will be used for the west direction, the free port in a node (2) will be used for the east direction, the free port in a node (0) will be used for the south direction, and lastly, the free port in a node (3) will be used for the north direction. This implies we will use only four ports from the available free ports in each BM for higher-level connectivity to create the 3D-Level-2 network. The gateways nodes, as shown in Figure 3 are chosen in the same group to make the packet change its direction during its journey to the destination node by traversing only one hop, which will increase the network performance.
The 3D-Level-2 network of SCCN is HIN composed of various BMs refer to the 3D-NoC-Level, which is recursively interconnected in a 2D-torus network of size (n × n), where n is a positive integer number. The value n can be any value. However, the preferable one is when n = 2 p , where p is a positive integer number. The connection between the BMs produced an advanced level of the 3D-SCCN with an extra number of nodes. The benefits of expanding the network size by using a 3D-NoC network are to decrease the distances between the nodes and increase the computational power and the performance of the newly generated network.
To build advanced levels of the 3D-SCCN, we will consider p = 2 to connect various BMs in a (4 × 4) 2D-torus network. If p > 2, this will provide a difficult network to manage. In addition, it will degrade the features of the newly generated network. For example, it will provide a long network diameter. Therefore, as shown in Figure 4, multiple BMs are connected in a (4 × 4) 2D-torus network. The total number of nodes in this network is 16 nodes. Each node is a 3D-NoC network with 96 nodes. Thus, the total number of nodes in this network can be obtained from Equation (5).
Here, N L refers to the total number of nodes in the current level, N BM refers to the lower immediate level, which is the BM of the existing level network, and m = 2 p , where m and p are integer numbers, and p = 2.
Thus, by substituting these values in Equation (5), we will obtain the total number of nodes in the 3D-Level-2 network of SCCN. We determined earlier N BM = 96 nodes, thus, the total number of nodes in 3D-Level-2 is N L = 96 × 2 ( 2 p ) = 96 × 16 = 1536 nodes.
As shown in Figure 4, many BMs connected in two-dimensional rectangular with n rows and n columns to provide a (4 × 4) 2D-torus network to construct Level-2 of the 3D-SCCN with 16 nodes. Each node is a (2 × 2 × 4) 3D-NoC which means that multiple 3D networks are connected hierarchically in a 2D network to provide Level-2 of the 3D-SCCN. Connecting the BMs in a 2D-torus network is beneficial in providing fair distances between the nodes and affected in reducing the power consumption. In Figure 4, the 3D BMs are arranged in 4 rows and 4 columns and connected to the adjacent nodes in four directions +X , −X , +Y , −Y through at least one link in each direction. As we mentioned earlier, the node degree of the 3D-NoC level is 7. Therefore, there are 112 free ports available in each node for higher-level connectivity. Connecting these nodes in a (n × n) 2D-torus network will provide a total number of free ports calculated from Equation (6).
Here, BM n = 6 and it refers to the total number of nodes in the BM of the 2D-SCCN, XY BMs refers to the total number of nodes in XY-plane, Z BMs the total number of nodes in z-direction, 4 is the used free ports, and m is an integer number where m = 2 p and p = 2. By substituting these values in Equation (6), the total number of free ports in Level-2 network is equal [(6×4×4)+(4×4)−4]×2 4 = 108×16 = 1728 free ports.
The total number of used free ports in each BM network in Level-2 of the 3D-SCCN determined from Equation (7).
Here, ufp refers to the used ports from each BM to make it connect to the adjacent BMs in four directions, m is an integer number where m = 2 and q is the inter-level connectivity, and q ∈ {0, 1, 2, . . . . . . p}, when q = 0 is the minimal inter-level connectivity, and when q = p is the maximum inter-level connectivity. The used free links for higher-level connectivity in each BM divided to m(2 q ) in x-direction, and m(2 q ) in y-direction. This paper will consider only the minimal interlevel connectivity where q = 0. Therefore, the total number of the usable free ports in each BM will be 2m(2 q ) = 2 × 2(2 0 ) = 4 free links as shown in Figure 3. The used free links are 2 in x-direction and 2 in the y-direction. Thus, in the (4 × 4) Level-2 network of the 3D-SCCN, there are 4 × 16 = 64 free ports used for higher-level connectivity to create this level. The availability of the wraparound links in Level-2 of the 3D-SCCN improves this network's performance by decreasing the distances between the edges to degrade latency and packets delay.
Many higher levels can be built based on the (m × m × m) NoC-Level and (n × n) Level-2 network of SCCN. We can build based on this network by assuming that Level-5 is the maximum level. The total number of nodes in this level can be determined from Equation (5) by knowing the total number of nodes in each lower level of this network. Consider that the total number of nodes in a (4 × 4) Level-3 network will be N L = N (L−1) × 2 4 = 15361 × 6 = 24576 nodes. Besides, the total number of nodes in (4) Level-4 will be N L = N (L−1) × 2 4 = 24576 × 16 = 393216 nodes. By knowing the total number of nodes in Level-4 which is the BM of Level-5 we can determine the total number of nodes in a (4) Level-5 network which is N L = N (L−1) × 2 4 = 393216×16 = 6, 291, 456 nodes. This implies that building a system based on the 3D-NoC of SCCN by connecting it in an (n × n) 2D-torus network will create a system with more than 6.3 million nodes. This will increase the computational power of the system and will provide an opportunity to execute unlimited operations in a short time. Increasing the network size by considering n = 4 in the higher levels of 3D-SCCN is preferable because it has better granularity than when n > 4.

D. LEVEL-3 OF THE 3D-SCCN (3D-Level3)
Level-3 of the 3D-SCCN proposed to expand the size of the 3D network, which we have built based on SCCN. More nodes will be added to the network at this level than in the previous lower levels. In addition, this level is a completely 3D network composed of 3D BM and 3D higher level. Level-3 of the 3D-SCCN is HIN composed of several 3D BMs connected in 3D design. Recursive interconnection of multiple 3D-NoC networks in a 3D-torus network of size (n × n × n) will create Level-3 of 3D-SCCN, where n is a positive integer number. The value of n could be any number. However, to maintain the network granularity, we will choose n = 2 p , where p is an integer number. As a result, this network has more computational nodes and takes advantage of the 3D network to improve performance. In this paper, we will consider p = 2, thus, Level-3 will be (4 × 4 × 4) network. Considering p > 2 will provide a network with a long diameter, it will be hard to manage. Therefore, we connect multiple 3D-NoC in a (4×4×4) 3D-torus network to provide a 3D-Level-3 network. This will provide a network with 64 nodes connected in three directions divided into 4 nodes in the x-direction, 4 nodes in the y-direction, and 4 nodes in the z-direction. Each node is a 3D-NoC network with 96 nodes. The total number of nodes in the 3D-Level-3 network of SCCN is calculated from Equation (8).
Here, BM n refers to the 3D-NoC Level and it equals 96. Besides, X n , Y n , and Z n refer to the total number of nodes in x, y, and z directions respectively in the (4 × 4 × 4) 3D-torus network. Thereby, by substituting, these values in Equation (8) we will obtain the total number of nodes in The structure of Level-3 of the 3D-SCCN is illustrated in Figure 5, and it shows several BMs connected in a 3D fashion in x, y, and z directions, where the number of nodes in each direction is 4. The aim of connecting this network ultimately in 3D design is to get the benefits of the 3D networks by reducing the global links, increasing the packing density, and decreasing power consumption. The 3D-BMs of 3D-Level-3 are arranged in three directions and connected to the adjacent nodes in six directions +X , −X , +Y , −Y , +Z , −Z . Besides, each node is connected to the neighboring nodes by at least one wire in each direction. These wires could be either electrical or fiber optic; the selection of these wires is based on the distances between the nodes. The fiber optic links are preferable for long distances, while the electrical wires are more desirable and cheap for short distances.
In 3D-Level-3, the edges nodes in each direction are connected through wraparound links; these links reduce the distances between the nodes and improve the performance. Each node in this level has three wraparound links in three directions to allow the node to send messages to the other edges in x, y, and z directions. Each node from the 64 nodes which compose the 3D-Level-3 is a 3D-NoC network with 96 nodes, and as we mentioned earlier, each 3D-NoC network has 112 free ports for higher-level connectivity. Therefore, connecting multiple 3D-NoC networks in a (4 × 4 × 4) network will produce a total number of free ports calculated VOLUME 10, 2022 from Equation (9).
Here, BM n is the total number of nodes in the BM of the 3D-Level-3 of SCCN. It equals 96. The value 4 refers to the free ports in each layer of the 3D-NoC Level, Z BM is the total number of nodes in the z-direction of the BM of the 3D-Level-3 network. It is equal to 4, and number 6 refers to the used ports for connecting each node in a 3D fashion to compose the 3D-Level-3 of SCCN. m can be any positive integer number. However, preferable when m = 2 to maintain the network granularity. By substituting these values in Equation (9) we will obtain the total number of the free ports in Level-3 of the 3D-SCCN network which equal to These ports are available to connect the proposed 3D-Level-3 of SCCN hierarchically to provide advanced-level networks.
As shown in Figure 5 each block or BM in 3D-Level-3 represents a 3D-NoC network of SCCN. These blocks are connected to the adjacent blocks in 6 directions +X , −X , +Y , −Y , +Z , −Z . This implies each BM used 6 free ports for connection. The number of the used free ports in constructing any higher level of the 3D-SCCN is determined from Equation (7), which we have used earlier through this paper ufp = 2m(2 q ).
m is a positive integer number refers to x, y, and z directions which will be taken by the message to move between any two nodes. Thus, m = 3 and q is the inter-level connectivity where q ∈ {0, 1, 2, . . . . . . p}, the minimal inter-level connectivity is when q = 0, while the maximum inter-level connectivity when q = p. The value of q has a crucial effect on the total number of free pots. Increasing the value of q will increase the number of the used free ports. However, in this section, we will consider the minimal inter-level connectivity when q = 0. In 3D-Level-3, the free ports in each BM are divided to 2m(2 q ) m in x-direction, 2m(2 q ) m in y-direction, and 2m(2 q ) m in z-direction. By considering q = 0, the total number of the free ports which will be used in each BM is 2m In the (n × n × n) Level-3 network of the 3D-SCCN, by considering n = 4, we will obtain a 6 × 64 = 384 free ports to construct this level. The remaining free ports are valid and available to construct upper networks.
Using (2 n × 2 n × 2 n ) Level-3 as a BM to create a higher level of SCCN will provide a network with an extraordinary number of nodes. By assuming that we need to build extra higher two levels by considering the 3D-Level-3 network as a BM, thus, we can obtain a (4 × 4 × 4) Level-4 network with several nodes equal to N 3DL = BM n × (X n × Y n × Z n ) = 6144 × (4 × 4 × 4) = 6144 × 64 = 393216 nodes. Using Level-4 as a BM to build Level-5 will provide a network with number of nodes equal to N 3DL = BM n × (X n × Y n × Z n ) = 393216 × (4 × 4 × 4) = 393216 × 64 = 25, 165, 824 nodes. This implies that we can build an MPC system based on the 3D-Level-3 network with several nodes higher than 25 million nodes. This will increase the computational power of the system to execute unlimited operations in a short period which will be good for future considerations.

IV. NODES ADDRESSING
To differentiate between the nodes in the network, we should give each node a unique address to deal with it easily. This address is composed of digits to identify the exact position of the node in the interconnection network. It also shows hierarchy levels to which the node belongs, from the highest to the lowest. Thus, each node will have an address to distinguish it from the other nodes. Level-3 of the 3D-SCCN comprises multiple BMs connected through links in six directions to build a (4 × 4 × 4) network. Each BM is a (2 × 2 × 4) 3D-NoC network with 96 nodes. 3D-Level-3 is composed of the proposed topology, which has six nodes and is connected completely; the 3D-NoC Level, which is a (2 × 2 × 4) 3D network; and a 3D-torus network. Thereby, the address of any node within this network must have three parts, each part representing a level of hierarchy. Starting from the left, the first part represents the node position in the 3D-torus network; the second part represents the node position in the 3D-NoC network. The last part represents the node position within the topology, the BM of the 2D-SCCN. Figure 5 illustrated the structural design of the 3D-level-3 of SCCN, and it shows how the nodes connected in a 3D fashion either in the higher or, the lower levels. Besides, it shows the address of each node defined based on the node position in x, y, and z directions. This implies we will use the location of each node within each level by determining the values of x, y, and z of each node. Thus, the description of the node position will start from the 3D-Level-3 network to reach the exact position of this node in the proposed topology. The node address is composed of three parts, and each part is composed of some digits; these digits indicate the node position in x, y, and z directions. For example, the first part of the node address will have three digits, the second part will also have three digits, and the last part will have a unique digit that refers to the proposed topology. Thus, starting from the left, the address of the node in the first part represents as A L 3 = (a x )(a y )(a z ), where 0 (a x )(a y )(a z ) m − 1, and m = 4. Besides, the second part of the node address refers to the 3D-NoC Level network and it denoted as A L NoC = (a x )(a y )(a z ), where 0 (a x )(a y ) m − 1, and m = 2. However, the value of z is 0 (a z ) s−1 and s = 4. The last part of the node address indicates the node's exact position in the network, and it refers to the node position in the proposed topology. The nodes within the proposed topology are six nodes denoted by digits from 1 to 6. Thereby, the node address within this level is denoted as A L BM = a while 1 a 6. Therefore, the node address in Level-3 of the 3D-SCCN will be represented based on these arrangements. Connecting the 3D-Level-3 hierarchy will provide higher levels based on this network. Therefore, the additional part will be added to the node address to represent each L-Level of this network, and each part will be composed of three digits. These digits are the values of x, y, and z. The address of any node within the 3D-Level-L network is denoted in Equitation (10) and (11).
More generally, in Level-L network of SCCN, the node address is denoted by: Building a network based on the 3D-level-3 network will provide networks with node address composed of n number of digits as shown in Equation (11), where n = 3L − 2, where L is the current level of the hierarchy. Besides, the node address within these levels will be composed of groups of digits starting from the right with group number (1), which refers to the node address in the proposed topology and composed from only one digit to group number (L) which refers to the current level of hierarchy. The number of digits in each group is defined based on the network architecture. For instance, the 3D-Level-3 of SCCN is composed of networks with different structures, starting from the lower level, the first level consisting of 6 nodes, the second level composed of a (2 × 2 × 4) network, and the last level is composed of a (4 × 4 × 4) 3D-torus network. As shown in Equation (11) the address of the node composed of 1 digit in the first level, 3 digits in the second level, and 3 digits in the last level.

V. ROUTING PROTOCOL
In 3D-Level-3 Network, each node has 6 paths for connection (+X , −X , +Y , −Y , +Z , −Z ). Sending a message through this level is required to choose the cheapest path to the destination node. The routing algorithm will consider x, y, and z directions to establish any connection. Routing a message between any two nodes will be from a lower level to the highest level or a higher level to the lowest level. Through its journey from a source to a destination node, the message will pass in different levels of hierarchy to reach the destination based on choosing the minimal cost between the two nodes. Therefore, in the 3D-Level-3, the message will travel through 3D networks to reach the exact location of the destination node, which is located at the lowest level of this system. The direction of the message will be defined based on a routing algorithm. This algorithm considers the shortest distance between any two nodes and will route the message VOLUME 10, 2022 in XY-plane or the z-direction. Thereby, once the message is generated in the source node, the routing algorithm will check the destination of this message to define the best path to the destination node by measuring the distances between the two nodes based on the location of each node. The location of each node is defined based on the values of x, y, and z. Therefore, the routing algorithm will check first if the source and the destination nodes are at the same XY level to choose a proper way between them. If not, the message will be routed vertically in the z-direction. To make it clear, if two nodes have the same values of z, the routing will be in XY-plane only.
Nevertheless, if the values of z are different, the message will be routed vertically, and then it will be routed in XY-plane. If the source and the destination nodes are at the same hierarchy level, the message will be routed directly to its destination at the same level. However, if two nodes are in different levels, the message will be routed from the source node in the lower level through the higher levels to reach the destination BM. Once the message arrives at the destination BM, the routing will start from the higher level through the lowest levels to the destination node.
To improve the routing mechanism in the 3D-Level-3 of SCCN, wraparound links are used as shown in Figure 5 to provide short ways to connect the edges nodes, which will increase the speed of message exchange. Thus, the routing algorithm will highly consider the wraparound links to decrease the distances between any two nodes and will be controlled by the location of the source and the destination nodes.
Each node (n) within the 3D level-3 is denoted by a decimal number where 0 n 6143. To route a message within this level, we will consider a group of steps starting from determining whether the two nodes are at the same layer by calculating the value of z for each node. If z values are equal, then we will go to the next step and route the message in XY-plane.
The total number of nodes in Level-3 of the 3D-SCCN is 6144 nodes; these nodes are divided into rows and columns in XY-plane and layers in the z-direction while each layer has the same number of nodes. Therefore, the first step of the routing process is to compare the values of z of the two nodes. If it is equal, the routing will be at the same layer. Otherwise, the message will be forwarded to the proper layer. As a result, the value of z of each node will be calculated based on the given decimal number of each node. Then, the value of each node will be divided by the total number of nodes in each layer. The total number of nodes in each layer is calculated from Equation (12).
Here, N l ayer is the total number of nodes in each layer, N is the total number of nodes in the 3D-Level-3 network and it equals 6144 nodes, and L n is the total number of layers and it equals 4. By substituting these values in Equation (12), the total number of nodes in each layer will be N l ayer = N L n = 6144 4 = 1536 nodes. Thus, the value of z of each node can be obtained from Equation (13). z = n ÷ N Layer (13) Here, n is the number of the given node in decimal where n is a positive integer number and 0 n 6143. After finding the value of z and determining the node's location in the z-direction, the routing algorithm will work at the same layer in the x and y directions to find the exact position of the node. Thus, the values of x and y of the node at the same layer are calculated by knowing the total number of nodes in each row and column of this layer. The layers are divided into rows and columns while the row indicates the value of x and the columns indicate the value of y. The total number of nodes in each row is defined by knowing the total number of nodes in each layer which we have determined from Equation (12) and the total number of rows. In this section, the total number of rows is 4 and the total number of columns is also 4. Thus, the total number of nodes in each row is N layer (numberofrows) = 1536 4 = 384 nodes. Based on this, we will find the exact position of the node in the XY plane. By finding the values of x and y of each node, the routing algorithm will choose the proper routing path between the two nodes. The value of x defined from Equation (14).
x = (n mod N layer ) ÷ n r (14) Here, n is the index of the given node where 0 n 6143, N l ayer is the total number of nodes in each layer of the network and equals 1536 nodes, and n r is the total number of nodes of the row in XY-plane which we have defined earlier.
The value of y is defined from Equation (15).
where n is the node number in decimal, n r is the total number of nodes of the row in XY-plane which we have defined earlier, and n B M is the total number of each node in the 3D-Level-3 network and it refers to the 3D-NoC Level and equal to 96 nodes. In (4×4×4) Level-3, after the routing algorithm calculates the value of z and forwards the message to the destination layer, the routing process will start at the same layer in x and y directions. Therefore, the distance between the current source node and the destination node will be measured to assign a new routing path between the two nodes based on the shortest distance. In this stage, the distance between the two nodes will be measured based on the values of x and y. For instance, we need to connect two nodes in the 3D-Level-3 network of SCCN, and these nodes denoted as (x 1 , y 1 , z 1 ) as a source node, and (x 2 , y 2 , z 2 ) as a destination node. Firstly, the routing algorithm will check the values of z 1 and z 2 . If they do not match, the message will be forwarded in the z-direction to make z 1 = z 2 . This implies that the message went to the layer in z-direction where the destination node is located. After that, the message will be routed in XY-plane by finding the values of x 1 , x 2 , y 1 , y 2 , these values measured from Equations (14) and (15) by knowing the index numbers of the source and the destination nodes. After that, the routing algorithm will measure the values of X and Y from Equations (16) and (17) respectively.
The values of X and Y will be compared if it is (>, <, =) the outcome of Equation (18), and based on the result the routing decision will be taken.
where n r is the total number of nodes in the row, and n BM is the total number of nodes in each BM of Level-3 and refers to the 3D-NoC Level of this network. The routing algorithm by comparing the outcome of Equations (16) and (17) to the outcome of Equation (18) will get many results. Based on the result, the routing path will be defined by choosing the shortest distance between the source and the destination nodes. The expected results of the comparison between Equations (16) and (17) and (18) could be one of the following: 1) X < 1 2 × n r n BM and Y < 1 2 × n r n BM 2) X > 1 2 × n r n BM and Y > 1 2 × n r n BM 3) X > 1 2 × n r n BM and Y < 1 2 × n r n BM 4) X < 1 2 × n r n BM and Y > 1 2 × n r n BM 5) X > 1 2 × n r n BM and Y = 1 2 × n r n BM 6) X < 1 2 × n r n BM and Y = 1 2 × n r n BM 7) X = 1 2 × n r n BM and Y > 1 2 × n r n BM 8) X = 1 2 × n r n BM and Y < 1 2 × n r n BM 9) X = 1 2 × n r n BM and Y = 1 2 × n r n BM . To summarize, the routing decision between any two nodes in the 3D-Level-3 will be through different steps. In the first step, after the message generates in the source node, the routing algorithm will determine the distance between the source and the destination nodes. If the node is not at the same layer, the message will be forwarded to a proper gate node with the shortest distance to the destination node. The message in this step will travel from the source node through the 3D-NoC Level network to a proper gate node. Once the message reaches the gate node, it will be forwarded in the z-direction to the layer where the destination node is placed.
Consequently, the message will be routed within the same layer in XY-plane to its destination node in the next step. After the message reaches the destination layer, the routing protocol will check the destination of this node, and if it is not located at the same node, the message will be routed through this layer to a propitiate gate node which has the shortest path to the BM which containing the intended node. In the last step, after the message reaches the destination BM, it will be routed through a 3D network in the BM node to the exact position of the destination node. In the first step, the routing will be from the lower-level network to the higher levels, and in the last step, the routing will be from the highest level to the lowest level. For example, routing a message between a source and destination node is illustrated in Figure 6, the node (5278), which is located in Layer 4 of the 3D-Level-3 in the coordinates (1,2,3) wants to send a message to node (1493) which is located in Layer 1 of the 3D-Level-3 in the coordinates (3,3,0). The message will follow the shortest path between these two nodes as shown in Figure 6 and illustrated by the green line. This green line shows the path taken by the message inside stage (1), stage(2), and stage(3) of the routing process. The flowchart of the routing algorithm is depicted in Figure 7. \ \ c a l c u l a t e t h e a v e r a g e d i s t a n c e A v e r a g e d i s t a n c e = t o t a l / (N * (N − 1 ) ) \ \ p r i n t t h e r e s u l t p r i n t ( a v e r a g e d i s t a n c e ) End

VI. STATIC NETWORK PERFORMANCE ANALYSIS
This section presents the evaluation of 3D-SCCN to check the strength of this network compared to 2D-SCCN and other conventional and hierarchical interconnection networks. Using a network with the same number of nodes is quite difficult due to the distinctive design of 3D-SCCN. Therefore, we will choose networks with almost the same number of nodes as 3D-SCCN to make the comparison fair. The comparison is plotted in the figures and shown in the tables. In this comparison, 2D and 3D conventional and hierarchical interconnection networks will be evaluated statically to examine the features of the 3D-SCCN. We have built our simulator program to test a routing algorithm of 3D-SCCN by using the shortest path. The simulator program description is as below: SIMULATOR: The scope of this paper is to create a 3D design from 2D-SCCN and measure the static performance of this network. To test the characteristics of the new design, we evaluated the static network performance parameters of the 3D-SCCN, which is the first step in evaluating this topology. This helps in predicting the nature of the dynamic performance of this network. Good static network performance (low diameter and average distance) under standard traffic patterns is a gateway to an excellent dynamic performance network (low latency and high throughput). Furthermore, the simplicity of evaluating the network statically compared to the dynamic evaluation is a time-effective and cost-effective way to predict the nature of the new design. The drawbacks of the static performance are related to traffic changes and resource failures, but the routing path is fixed and predetermined.
On the other hand, the dynamic routing algorithm is affected by traffic changes in choosing the best path between any two nodes. Therefore, in this paper, which is the first proposal of the 3D design of SCCN, we chose to evaluate it statically. In contrast, it will be evaluated dynamically under different circumstances such as deadlock, congestion, delay, and so on in future research by using simulators such as Gem5 or Bookism. To evaluate the 3D paradigm of SCCN, we created our own simulator program by using C++; this simulator is composed of multiple functions, and each function has a specific task during the evaluation process, as shown in Algorithms 1,2,3 and 4. The network is a hierarchical interconnection network and is composed of multiple levels. Each lower level has been evaluated separately and then has merged in the program to assess the higher level. The simulator program has the following parts:

1) 2D Network-on-Chip (2D-NoC) Function:
This function works to route the message to the lowest level of the 3D-SCCN. This level is the 2D-NoC level and has 24 nodes divided equally between four groups. This function is responsible for the routing process in the basic module of the 3D-NoC Level network of the 3D-SCCN. The routing algorithm will route the message from the source node to its destination in case the destination node where at the same level, but if the destination is outside this level, the routing algorithm will send the message by using the shortest path to a proper gateway to reach the higher level. 2) 3D-Netork-on-Chip (3D-NoC) Function: This function works in the 3D-NoC level, a (2 × 2 × 4) network with 96 nodes. When the simulator program identifies that the source or the destination nodes are located in the 3D-NoC network, this function will be called. The function will check first if the two nodes are at the same layer by using Equation (13) to measure the value of z.
If the values of z are not matching, the message will be routed in the z-direction until the z values of both nodes become equal. Then the function will route the message in x and y directions by calculating the values of x and y from Equation (14) and Equation (15) respectively. Based on the results, the short path between the two nodes will be measured by using the Equations (16), (17), and (18) and then the message will be routed to its destination through this path. During the routing process in the 3D-NoC network, if the function finds that the destination node is outside its range, the message will be forwarded to the proper gateway to a higher or a lower level based on the shortest path. 3) Level-2 of 3D-SCCN Function: In this function, multiple 3D-NoC networks are connected in a (4 × 4) 2D-tours network. The total number of nodes in this level is 1536. This function is programmed to connect any two nodes in x and y directions. This function will be called when the simulator program identifies that the source or the destination node is located at this level. Each node of this level is a 3D-NoC network. When the message is in this lower level, the function of the 3D-NoC will be called. However, when the message comes out from the 3D-NoC network through the gateway, the function of Level-2 will be called. First, this function will determine the values of x and y by using Equation (14) and Equation (15), and then it will calculate the absolute values of x and y by using Equation (16) and Equation (17) respectively. Then the function will compare the outcome of these equations to Equation (18). There are 9 expected results from this comparison, as we have mentioned in section IV of this paper. The function will examine these results and choose the shortest path to send the message through. 4) Level-3 of 3D-SCCN Function: In this function, multiple 3D-NoC networks are connected in a (4 × 4 × 4) 3D-torus network with 6144 nodes. The basic module of this network is a 3D-NoC network. Thus, when the message is inside this node, the function of the 3D-NoC will be called when the function of the 3D-NoC finds that the message is outside its range. The message will be routed through a gateway to the 3D-Level3 of SCCN. Thus, to send the message to its destination, the simulator program will call the function of the 3D-Level3 network. The function will check if the source and the destination nodes are at the same layer by measuring the values of z of both nodes by using Equation (13). If the values of z are not matching, the message will be forwarded through z-direction. However, if the values of z are equal, the function will forward the message in the x and y directions through the shortest path. The function will determine the values of x and y from Equations (14) and (15) respectively. Then the function will calculate the absolute values of x and why by using Equations (16) and (17) and the results will be compared to Equation (18). The expected results of this comparison are 9, as mentioned in section IV of this paper. Therefore, the function will choose the proper one to forward the message through the shortest path to the destination node.
Eventually, the simulator will use the results from the above functions to calculate the diameter and the average distance of the 3D-SCCN network by calling the algorithm (1) and the algorithm (2), respectively. The simulator is complex because the 3D-SCCN is a hierarchical and irregular interconnection network. The simulator will examine all the possible distances between any two nodes within this network, and the nodes will be chosen randomly. Thus, each node in this network will be, at one time, a source node and, at another time, a destination node. Besides, the simulator will consider all the possible ways to send the message from a source to a destination node by choosing the shortest path.
The evaluation of the static network performance of the 3D-SCCN is as below: A. NODE DEGREE 3D-SCCN is a hierarchical interconnection composed of (2 × 2 × 4) 3D-NoC networks connected in either 2D-torus or 3D-torus networks. The node degree of the BM Level of this network is 6, and to connect multiple BMs hierarchically, we increased the node degree to 7 to take advantage by decreasing the distances between the nodes and make data exchange faster between (+X , −X , +Y , −Y , +Z , −Z ) by traversing only one hop. The node degree of a network is the maximum number of physical links emanating from the node to be connected to other nodes [34].
The node degree comparison of various networks is plotted in Figure 8 and shown in Tables 1, 2, and 3. Node degree of the 3D-SCCN increased from 6 in the BM level to 7 in the 3D-Level-3 network. From Figure 8, in some networks, the node degree is fixed. However, in other networks, the node degree increased with the number of nodes such as 2D-torus, 2D-mesh, 3D-mesh, and 3D-torus. As a result, the node degree of 3D-SCCN is higher than that of all networks except HTN, H3DM, and MH3DT, as shown in Tables 2 and 3. 2D-SCCN has node degree 6 compared to the 3D-SCCN. Node degree comparison of various networks. In some networks, the node degree is fixed. However, in other networks, the node degree increased with the increase of the number of nodes such as 2D-torus, 2D-mesh, 3D-mesh, and 3D-torus. The node degree of 3D-SCCN is higher than that of all networks except HTN, H3DM, and MH3DT.
The high node degree increases the price of creating a network. However, it has an advantage in controlling the high bandwidth leading to less congestion and latency network. This implies that 3D-SCCN is cheaper than networks with a higher degree and controls the bandwidth better than those with a lower degree. Table 3 shows that the upgrading of the design of 2D-SCCN to 3D-SCCN increased the node degree.

B. NETWORK DIAMETER
The network diameter is considered one of the best network performance measures; the short diameter means a good performance network while the long diameter degrades the network efficiency. Therefore, a topology with a short diameter builds a system with good performance. The network diameter is the maximum number of hops that must be traversed to send a message between two nodes and considers the topological distance between any two nodes [35].
In this section, we evaluated the network diameter of the 3D-SCCN network. A simulator program has considered this parameter, as shown in Algorithm 1. The simulator calculated the maximum distance needed by a message to connect any two nodes in the 3D-SCCN. The result from the simulator is plotted in Figure 9 and shown in Tables 1, 2 and 3 and compared to several networks to find the best diameter between them.
The comparison was conducted between several networks and illustrated in Figure 9. The diameter of all the networks included in this comparison was collected from the literature. For some networks such as 2D-mesh, 2D-torus, 3D-mesh, and 3D-torus, we used formulas from the literature to calculate the diameter. From Tables 1,2 and 3, also from Figure 9, and by considering the total number of nodes of each network, we can say that 3D-SCCN has the shortest network diameter between all these networks in this comparison. This means that 3D-SCCN has the shortest path to connect any two nodes than the other networks.
The improvement of developing SCCN from a twodimensional to a three-dimensional network is shown in the big difference between the diameter size of 2D-SCCN and 3D-SCCN.

C. COST
Network diameter and the node degree significantly affect the cost of the network. Both can increase or decrease the cost of creating the network. The product of those two parameters is the cost of the interconnection network, and it represents as cost = (diameter × degree) [36]. In this section, we have calculated the diameter and the node degree of the 3D-SCCN, and the product of the results is the cost of creating this network. Similarly, we measure the cost of any interconnection network.
By using the cost of multiple networks, we plotted Figure 10 to compare the cost of these networks. The comparison aims to identify the highest and the lowest price between these networks. From Figure 10, the highest cost is 2D-mesh, and the lowest is TESH. The cost of 3D-SCCN came in fifth VOLUME 10, 2022 place between these networks, as shown in Table 3. However, if we consider that 3D-SCCN has 6144 nodes and the other networks have 4096 nodes, this high number of nodes makes 3D-SCCN cheaper than these networks, especially when the difference in the cost between these networks is minor.
Upgrading the architecture of SCCN from a twodimensional to a three-dimensional network has advantages in decreasing the cost of this network as shown in Figure 10.

D. AVERAGE DISTANCE
The diameter does not always give the real performance of the interconnection network because the message travels distances less than the network diameter. Therefore, knowing the average distance the message traveled is significant in measuring the performance. The average distance of the interconnection network is the mean distance between all the distinct pairs of nodes in the interconnection network [37]. Therefore, a small average distance is desirable, and it decreases latency. Besides, it provides a smaller number of wires, buffers, and less contention.
A collection of conventional and hierarchical interconnection networks was compared with the average distance. This comparison plotted in Figure 11 and tabulated in Tables 1, 2, and 3. The highest average distance was the 2D-mesh network followed by 2D-torus and 3D-mesh. On the other hand, the lowest average distance shown in Table 3 was MH3DT and 3D-SCCN. 3D-SCCN has 6144 nodes compared to MH3DT with 4096 nodes. By considering the number of nodes of each network, 3D-SCCN has the shortest average distance, which makes it better than all the networks included in this comparison.
The 3D design of SCCN significantly lessens the average distance between the nodes compared to the two-dimensional design, which we proposed in previous work as shown in Figure 11. Table 3 shows that the average distance in 3D-SCCN is 12.664 while 21.69 in 2D-SCCN.

E. ARC CONNECTIVITY
Arc connectivity of a network is the minimum number of links that must be cut to separate the network into two parts and is a good measure for network reliability [38]. Therefore, high arc-connectivity means a good performance network. Furthermore, the Arc-connectivity of a network has a significant role in mitigating congestion and increasing the fault tolerance of the network. Therefore, if node degree and arcconnectivity are equal, the network is reliable and robust.
Arc connectivity of different networks is plotted in Figure 12 and portrayed in Tables 1, 2 and 3. The highest arc-connectivity between these networks is 6 in 3D-torus, MH3DT, HTN, and H3DM. The second highest arc-connectivity is in the 3D-SCCN, and it equals 5. 2D-mesh,3D-mesh, and TESH has the lowest arc-connectivity.
SCCN maintained a fixed value of arc-connectivity in both the two and the three-dimensional design as shown in Figure 12.

F. BISECTION WIDTH
Bisection width (BW) highly affects the cost of very-largescale integration (VLSI) layout and the interconnection network performance. BW is the minimum number of links that have to be cut to separate the network into two equal parts and is an essential topological measure for the performance of the interconnection networks. Besides, BW is important to measure the traffic volume that can be controlled by the network [39].
In this paper, 3D-Level3 is the highest level of the 3D-SCCN, and it is a (4 × 4 × 4) 3D-torus network. Multiple (2 × 2 × 4) 3D-NoC levels are connected hierarchically to  compose this level. Since BW of the 3D-torus network is calculated from the formula 2k (d−1) , where k is the number of the nodes in each direction and d is the number of dimensions, k = 4, and d = 3. This equation can be applied on Level-3 of the 3D-SCCN. Therefore, equation (19) is applicable to measure BW of the 3D-Level3 of SCCN.
By substituting the values of k = 4, and d = 3 in Equation (19), BW of the (4 × 4 × 4) 3D-Level3 of SCCN is 2 × (4) (3−1) = 32. This implies removing 32 wires from this network can partition the network into two equal parts. BW separates input data into two equal parts and solves them independently, and merges the results to provide a final solution for the problem. A small BW means a low bandwidth network which will slow the merge of the final solution. However, large BW will increase the data exchange and lead to a high fault tolerance network. However, it required a large layout area for VLSI implementation. Thus, the moderate BW is more desirable to increase the data exchange and effective VLSI implementation. Figure 13 and Tables 1,2, and 3, show the comparison of BW of different networks. For example, from Table 3, BW of 3D tours, a conventional interconnection network, is 800 while BW of the 3D-SCCN, a hierarchical interconnection network built based on 3D-tours, is 32. These results proved the importance of using hierarchical interconnection networks in building MPC systems.
From the comparison in Figure 13, some networks have high BW, such as 2D-mesh, 3D-mesh, 2D-torus, and 3D-torus, while networks such as TTN, TESH, and STTN have too small BW. 3D-SCCN came in the middle between these networks, implying it has a moderate BW that is desirable for MPC systems.
Developing the network design from 2D-SCCN to 3D-SCCN provides SCCN with a moderate BW compared to the other networks. VOLUME 10, 2022 G. WIRING COMPLEXITY The cost of the interconnection network is affected highly by the wiring complexity of this network. Therefore, a network with a smaller number of wires is preferable more than a high number of wires. The wiring complexity (WC) of the interconnection network is the total number of wires needed to connect each node to the other nodes in this network [40]. WC of a network is also affected by the node degree of this network, which increases the number of wires of the network. The conventional networks such as 2D-mesh, 2D-torus, 3D-mesh, and 3D-torus have mathematical formulas to calculate the total number of wires. For instance, WC of a (80 × 80) 2D-mesh and 2D-torus networks is For the 3D-NoC Level of SCCN, we can calculate the total number of wires by counting the wires in each level of this network, and the result is the wiring complexity of this network. 3D-NoC comprises multiple 2D-NoC networks as a BM connected in four layers in the z-direction. For 2D-SCCN, we calculated the WC of different levels by Equation (20), Equation (21), and Equation (22). Equation (20) was used to calculate the total number of wires in the BM of 2D-SCCN.
Here, N represents the total number of nodes in the BM of 2D-SCCN which equals 6. Equation (21) The number of groups in 2D-NoC of SCCN is 4, and the total number of the global links which connect these groups equals 6 wires. By Substituting the values from (20) in (21), the total number of links in 2D-NoC is obtain from Equation (22).
The (n × n × n) 3D-NoC is composed of N layers where each layer is a 2D-NoC network. Therefore, to calculate the number of wires in these levels we will use Equation (22) to derive Equation (23). From Figure 2, there are 4 wraparound links connecting the edge layers of 3D-SCCN which will be considered in calculating the WC of this network. Based on this we derive Equation (23). (23) Here, N l is the total number of layers in the z-direction of the 3D-NoC network and equals 4. N is the number of nodes in the BM of the 2D-SCCN network. Thus, by substituting these values in Equation (23), we will obtain the number of wires in 3D-NoC Level which is WC 3D−NoC = (4 × ([[ 6 2 + (6 × 2)] × 4] + 6)) + 4 = 268 wire.
The (N x ×N y ) Level-2 network of the 3D-SCCN composed of the hierarchical connection of multiple 3D-NoC networks in a (2 m × 2 m ) 2D-torus network. Therefore, from Equation (23), and the formula of calculating the wiring complexity of the 2D-torus network, we will derive Equation (24) from calculating WC of 3D-level-2 of the 3D-SCCN.
Here, N l is the total number of layers in the 3D-NOC and equals 4, N x is the total number of nodes in the x-direction of 3D-Level-2 and equals 4, N y is the total number of the nodes in the y-direction of 3D-level-2 and also equals 4. By substituting these values in Equation (24), we will obtain the total number of links in the 3D-level-2, which equals 4320 wires. 3D-Level-3 is a 3D-torus network with 16 nodes, and each node is a 3D-NoC network. Therefore, we will use this fact to create a formula to calculate the WC of this network. The formula is a mix of the Equation of calculating WC of the 3D-NoC and the Equation that measures WC of 3D-torus. The links in the 3D-NoC network are a mix of the links in the 2D-NoC and the BM of the 2D-NoC network. Thus, we will combine Equation (23) and the formula of calculating WC of the 3D-torus network to derive Equation (25) as a mathematical formula to calculate WC of 3D-Level-3 of the 3D-SCCN.
Here, N l is the total number of layers in the 3D-NOC level and equals 4, N BM is the total number of nodes in the BM of the 2D-NoC networks and equals 6, N x is the total number of nodes in the x-direction of 3D-Level3 and equals 4, N y is the total number of the nodes in the y-direction of 3D-Level3 and equals 4, and N z is the total number of nodes in the z-direction of 3D-Level3 and equals 4. d refers to the number of dimensions of 3D-Level3 and equals 3, N is the total number of nodes in this network and equals 64 nodes. By substituting these values in Equation (25), we will obtain the total number of wires in the 3D-Level-3 network, which equals 17344 wires. The graph compares the increase of the network size to the increase of its WC. 3D-SCCN has a moderate number of links between these networks where the WC of 3D-SCCN is extremely lower than that of 3D-tours and 3D-mesh and a little bit higher than that of TESH, STTN, and H3DT.
The WC comparison of various networks is plotted in Figure 14 and tabulated in Tables 1,2 and 3. 3D-mesh and 3D-torus have the highest number of wires. In contrast, networks such as STTN, TESH, and H3DT have the lowest number of wires between the networks in this comparison. 3D-SCCN has a moderate number of links between these networks where the WC of 3D-SCCN is extremely lower than that of 3D-tours and 3D-mesh and a little bit higher than that of TESH, STTN, and H3DT. However, by considering the number of nodes in 3D-SCCN compared to the other networks (TESH, STTN, and H3DT), the extra wires in 3D-SCCN came to increase the number of nodes of this network.
Upgrading SCCN from the 2D design to the 3D design decreases the number of wires from 17440 links in 2D-SCCN to 17344 links in 3D-SCCN, where the two networks have 6144 nodes, as shown in Table 3.

H. ROUTING PATH SIMULATION
The following algorithms implements the calculation of the routing path in the three-dimensional Network on Chip of SCCN (3D-NoC), and in the 3D-Level3 of the 3D-SCCN: End

VII. RESULTS
The contribution of this paper is proposing the 3D design of the 2D-SCCN network, which we have discussed in previous work. The paper shows that the 3D design of SCCN improved the performance of this network highly compared to its last 2D design. The network on chip level of the 3D-SCCN (3D-NoC) was presented and built by connecting several 2D-NoC networks in a three-dimensional fashion. This network has 96 nodes and was evaluated statically and compared to multiple networks, as shown in Table 1. This level has the shortest diameter and the shortest average distance, which are considered the best static attributes for the interconnection network.
To expand the size of the 3D-SCCN, we proposed a 3D-level-2 network by connecting various 3D-NoC networks in a (2 × 2) 2D-torus network. This network was evaluated by a simulator program and compared several networks as shown in Table 2. 3D-Level-2 of SCCN has the best static parameters compared to the other networks, especially with the shortest diameter and shortest average distance.
To go further with the 3D design of SCCN, we integrated 6144 nodes by proposing the 3D-Level3 network of SCCN through connecting various 3D-NoC levels in a (4 × 4 × 4) 3D-torus network. To evaluate this level statically, we created a simulator program using C++. This simulator used the shortest path routing protocol to connect the nodes in this level under normal conditions. The evaluation of this level proved that the 3D-Level3 has the best results in almost all aspects compared to various hierarchical and conventional interconnection networks, especially in network diameter and average distance. 3D-SCCN attributes are significantly better than traditional networks such as 2D-torus, 2D-mesh, 3D-torus, and 3D-mesh, as shown in the figures from 8 to 14.
By taking into account that 3D-SCCN has 6144 nodes compared to 4096 nodes in the hierarchical networks (TTN, STTN, TESH, H3DT, MH3DT), 3D-SCCN has the best node degree, the shortest diameter, the shortest average distance, lowest cost, moderate bisection-width, and a high arcconnectivity with a little bit high wiring complexity.

VIII. LIMITATIONS
The limit of this paper is to introduce and evaluate a 3D design of the 2D-SCCN network. First, the 3D-SCCN was developed from the NoC-Level of the 2D-SCCN, which we have proposed in previous work. This level is connected hierarchically in x, y, and z directions to create the 3D-NoC-Level of SCCN. Then, 3D-NoC was combined hierarchically to build more extensive 3D networks called 3D-level-2 and 3D-Level3 of 3D-SCCN. The static network performance parameters of each level were evaluated separately by using a simulator program built for this purpose by using C++. This simulator evaluates these levels statically under ordinary circumstances by using the short path routing protocol. The results from this simulator were plotted in figures and portrayed in tables. Eventually, we compared the different levels of the 3D-SCCN to a high number of networks that have almost the same number of nodes in each level. Also, we have compared the 2D-SCCN to the 3D-SCCN to show the advantages of upgrading the network from the 2D paradigm to the 3D paradigm.

IX. CONCLUSION AND FUTURE WORK
The main contribution of this paper is to use the 2D-SCCN, which we have proposed in previous work to build a three-dimensional network to take advantage of the 3D design. First, we have connected multiple 2D-SCCN in a (2 × 2 × 4) network; this produced a 3D network called 3D-NoC with 96 nodes. Then, to increase the number of processing elements and the computational power of this network, we connected multiple 3D-NoC networks in a (4 × 4) 2D-torus network to build the Level-2 of the 3D-SCCN with 1536 nodes. This network showed a good result; however, it lacked the full adoption of the 3D architecture. Thus, we proposed Level-3 of the 3D-SCCN, which has various 3D-NoC networks connected in a (4 × 4 × 4) 3D-tours network. This network has 6144 nodes, and it can produce more computational power than the lower levels.
To ensure this network has better performance than other networks, we have evaluated this network with computer simulator. This simulator program used the shortest path routing algorithm to measure the number of hops and the average distance between any two nodes in this network. To calculate the level of strength of the 3D-SCCN, we have compared each level to other networks that have almost the same number of nodes. The 3D-SCCN proved the possession of better static features, minimal diameter, and low average distance. Dynamic performance is the next stage of evaluating the 3D-SCCN; the good static results excited us to prove its superiority in this direction further.
The application of the 3D-SCCN is to use it in replacing the current 2D and 3D networks that are used currently in the industry of parallel computer systems. This study on this network shows the strength of its performance compared to other networks. Therefore, we will use simulators such as Gem5 or Bookism to evaluate the 3D-SCCN under various dynamic traffic patterns for future work. Also, we will increase the size of this network by using Level-2 and Level-3 as basic modules of higher levels, and we will evaluate it statically and dynamically.