You are on page 1of 5

JOURNAL OF COMPUTING, VOLUME 4, ISSUE 2, FEBRUARY 2012, ISSN 2151-9617 https://sites.google.com/site/journalofcomputing WWW.JOURNALOFCOMPUTING.

ORG

56

Simulation the Generalized de Bruijn as Fault Tolerant topology for network on chip
Reza Kourdy Department of Computer Engineering Islamic Azad University, Khorramabad Branch, Iran Mohammad Reza Nouri rad Department of Computer Engineering Islamic Azad University, Khorramabad Branch, Iran

Abstract Networks on chips (NoCs) have introduced as a remedy for the growing problems of current interconnection VLSI chips. Being a relatively new domain in research, simulation tools for NoCs are scarce. To fill the gap, we use network simulator NS-2 for simulating the Generalized de Bruijn as Fault Tolerant topology in NoCs, especially at high-level chip design. The huge library of network elements with its flexibility to accommodate customized designs like (ASIC), caused to network simulator 2 (NS-2) becomes available choice for NoCs. We propose a flexible simulation of the Generalized de Bruijn for network-on-chip which can be use to simulate various parameters of performance and quality of service. Index Terms NoC (Network on chip), Quality-of-services (QOS), de Bruijn, Fault Tolerant topology, NS2.

1 INTRODUCTION
Systems-on-chip (SoC) for multimedia or telecommunication applications will contain a large number of processing elements (PEs) such as a DSP processor, RISC CPU, embedded RAM, graphics engine, etc. As a result, there is a need for high-throughput communications links between these blocks. There exist many bus based SoCs which are widely used in industry such as AMBA [1], IBM Core-Connect [2], Pi-Bus [3], etc. During the last years, Networks-on-Chip (NoCs) have become a true alternative for the design of complex integrated Systems-on-Chip (SoC). Much effort has been spent for research on functionalities, mechanisms, and Quality-of-Service (QoS) features in NoCs [4]. Packet-based interconnection networks, known as Network-on-Chip (NoC) architectures, are increasingly adopted in System-on-Chip (SoC) designs, which support numerous homogeneous and heterogeneous functional modules. Systems-on-chip (SoCs) for multimedia or telecommunication applications will contain a large number of processing elements (PEs) such as a DSP processor, RISC CPU, embedded RAM, graphics engine, etc. As a result, there is a need for high-throughput communications links between these blocks. There exist many bus based SoCs which are widely used in industry such as AMBA [5], IBM Core Connect [6], Pi-Bus [7], etc. We know that NoC system platform as a very complex and multi-protocol networks provides end-to-end quality-ofservice (QoS) is crucial for optimum system performance. QoS is characterized by diverse parameters, such as reliability, delay, jitter, bandwidth, packet loss, and throughput [8]. Fault-tolerance is fast becoming an integral part of system-on-chip and multi-core architectures. Another trend for such architectures is network-on-chip (NoC) becoming a standard for on-chip global communication. In an earlier work, a generic fault tolerant routing algorithm in the context of NoCs has been presented [9],[10].In this paper, we characterize the system requirements of NoC based systems and propose a novel routing protocol for providing additional Bandwidth with QoS in NoCs. We would use the tool, Network Simulator ns-2 [11], [12], Which has been extensively used in the research for design and evaluation of public domain computer network, to evaluate various design options for NOC architecture, including the design of router, communication protocol, Routing algorithms. NS-2 is an open source, object-oriented and discrete event driven network simulator written in C++ and OTCL. It is a very common and widely used tool to simulate small and large area networks [13].

2. BACKGROUND 2.1 FAULT TOLERANT NOC TOPOLOGIES


As mentioned before topologies of network, defines how the network nodes are physically connected on the chip and therefore to deal with situation of FAULT during runtime, the topologies must be fault tolerance inclusive. However before we delve deeper, we should first note some characteristics of TOPOLOGIES 1. Diameter: The diameter (D) of a network is the maximum internodes distance, i.e. the maximum number of links that should be traversed to send a message to all nodes along the shortest path. The smaller the diameter of a network, the less time it takes to send a message from one node to the farthest node. 2. Node Degree (Switch Degree): The node degree (ND) is defined as the number of physical channels emanating from a node. This attribute shows the nodes I/O complexity. 3. Bisection: Number of links that are cut to obtain separate network. Bisection bandwidth tells us about Fault

JOURNAL OF COMPUTING, VOLUME 4, ISSUE 2, FEBRUARY 2012, ISSN 2151-9617 https://sites.google.com/site/journalofcomputing WWW.JOURNALOFCOMPUTING.ORG

57

tolerance as get two isolated network. There are many topologies that have been proposed for Network on Chip like Mesh, Torus, Star, Octagon, etc. Among these topologies, mesh topology has held the attention of the engineers owing to its simplicity. But, mesh topology has long diameter which implies that it has high latency and therefore it has negative effect on communication. So, to reduce the latency, a new topology was proposed namely, Torus topology, nevertheless the simplicity of the mesh topology was retained. In Torus topology, the switches on the edges are connected to the switches on the opposite edges through wrap-around channels. Every switch has five active ports: one of these switches is connected to the local resource while the other four are connected to the closest neighboring switches. The Torus architecture reduces the network diameter, but the long wrap-around connections may result in excessive delay. Some of the most widely used topologies are:

Therefore, care has to be taken to avoid accumulation of traffic in the center of the mesh and avoid creating a hotspot.

2.1.3. d-dimensional k-ary (fat trees)


In this topology, there are d levels in which each router has k children, network interfaces are attached only to the leaves. Due to low concentration of the traffic at the root of the tree, the bisection bandwidth of trees is very low. However, a possible solution is to duplicate the root. This will result in fat trees which have a large bisection bandwidth (and hence performance), but associated area cost also increases. For larger number of nodes, the layout of the fat tree is more difficult, in comparison with meshes or tori.

2.1.1. Crossbar
In Crossbar topology, every router is connected to some other router which means that NoC is fully connected. This interconnection results into a single crossbar. It does not scale up to large number of Network interfaces.

Fig. 2: Butterfly Fat Tree

2.1.4. Generalized de Bruijn Graph


de Bruijn Graph topology has been there for a while on the minds of the scientist across the world as Fault tolerant NoC topology. In this section, de Brujin graph has been described and its fault tolerant capabilities have been discussed. [14] A generalized de Bruijn graph, GDB(d,n), has n nodes, where n can be any desired integer value. Further, Generalized de Bruijn graph GDB(d, n) is Hamiltonian. Each two nodes i and j are connected together if they satisfy one of the following equations: (for d=2) i 2*j + r (mod n), r=0 or 1 (Eq. 1) j 2*I + r (mod n), r=0 or 1 (Eq. 2) GDB(2, n) is called generalized binary de Bruijn graph. A generalized binary de Bruijn graph for n=14 nodes is shown in figure 3. As seen, except four nodes all other nodes have four links. Nodes 0 and 13 have just two links, and Nodes 4 and 9 have three links. The number of links for each node in a generalized de Bruin graph can be determined by the under mentioned theorem. Theorem 1: All nodes in a generalized binary de Bruijn graph have four links, except the following nodes: a) Only two Nodes 0 and n-1 in a GDB(2, n) have two links. b) If n=3k (k is an integer number) then Nodes n/3,

Fig. 1: Cross Bar Topology

2.1.2. N-dimensional k-ary mesh


This topology, in particular 2-ary mesh, has become been very widely used NoC topology because the routers can be pre-placed in layout and all the links have the same (limited) length. In general, the number of network interfaces per router is usually one, but if required the number can be higher. E.g. QnoC and Nostrum. The area of meshes is in direct proportion to the number of cores, which means that the number of meshes and network interfaces grows linearly with the number of cores. In this arrangement, the average distance between the Network Interfaces is relatively large, which affects power dissipation negatively. Further, they have limited bisection bandwidth and their performance goes down under high load.

JOURNAL OF COMPUTING, VOLUME 4, ISSUE 2, FEBRUARY 2012, ISSN 2151-9617 https://sites.google.com/site/journalofcomputing WWW.JOURNALOFCOMPUTING.ORG

58

2n/3, (n-3)/3, and (2n-3)/3 have three links. c) If n=3k+1 then Nodes 2(n-1)/3 and (n-1)/3 have three links. d) If n = 3k+2 then Nodes (n-2)/3 and (2n-1)/3 have three links. A generalized de Bruijn graph possesses many features which makes it a strong contender for implementation of reliable network. The most important feature is the logarithmic relationship between the diameter of a generalized de Bruijn graph and the number of nodes in the graph. The diameter of a generalized de Bruijn graph GDB(d,n) is not greater than logdn. 4.1 NoC Design based on de Bruijn Graph: In order to design a NoC, we have to think of the following: 1. Think of a switch architecture 2. A topology to connect switches together 3. A routing algorithm

2.4 Routing
The diameter of a generalized de Bruijn graph has at most a logarithmic relationship with the number of nodes. Therefore, a simple routing algorithm can be implemented in switches of a NoC, with low area overhead. Flit-type bits determine the head, data, and tail flits. The tag bits that are grouped into two subfields (i.e., Tag-1 and Tag-2) determine the exact route from the source to destination nodes. The network uses source routing algorithm, so the source core generates the tag bits which go through certain minor modifications at each intermediate node along the path to the destination. When a message arrives at node s, there are two possibilities. First, the message may have to be delivered to the core connected to s, so the switch at s must deliver the packet to that core. On the other hand, if the message is destined for another core, the s must forward the packet to one of its neighbor switches which is the next hop in the path. The selection of the particular switch is based on the corresponding tag bits in the tag field of head flit.

3. SIMULATION FRAMEWORK
In this paper, we have modeled our MPLS-noc architecture concepts with the widely used network simulator ns2 [15]. NS-2 has been widely applied in research related to the design and evaluation of computer networks and to evaluate various design options for noc architectures [16], including the design of routers, communication protocols, etc.

Fig. 3: De Bruijn Graph (d,n)

2.2 Switch structure


As mentioned earlier, the switch consists of three parts: I/O ports, a router, and a crossbar switch. The switch used for de Bruijn topology is structural, and consists of five ports each of which is operates independently from other ports and includes a multi channel circular FIFO. Each port is capable to concurrently send/receive data to/from other ports. In a situation when two or more ports want to send data to a port at same point in time, a round-robin arbiter hinders the collusion of data and grants to just one port. The port which gains the access then begin to send data and other ports will go in wait mode until this port finishes with sending data.

3.1. THE 2D DBM TOPOLOGY


The basic idea about our work is based on digraphs, and in this section, we present the information compiled from studies conducted on the de Bruijn digraph [17],[18]. The de Bruijn topology has many applications in communication networks and parallel processing [17][18]. A de Bruijn graph has kn nodes. Each node u=(un1,...,u0) has an edge to node v=(vn-1,...,v0) if and only if vi=ui-1 1<=i<=n-1. Node v has directed link to node u if and only if u v k r(mod k n ), 0 r k 1 (1) The in-degree and out-degree of a node is equal to k. Therefore, the degree of each node is equal to 2k. The diameter of a de Bruijin graph is equal to n which is optimal. The de Bruijn also has a simple routing algorithm. Case K=2 is the most popular de Brujin network which is also used in this study. Due to the logarithmic (optimal) diameter and a simple routing algorithm, it can be expected that the traffic on channels in the network will be less than other networks, resulting in a better performance [19]. Several researchers have studied the topological properties [18],[17] and efficient VLSI layout [20][17] of the de Bruijn networks. Moreover, the scalability problem of de Bruijn networks is addressed in [17]. In de Brujin network with shift operations, data is circulated from node to node

2.3 Topology
The de Bruijn graph topology is explained as shown in Figure 3. In order to cover all the links we create two linkdisjoint binary spanning trees from de Bruijn graph. So, we use equation 3 and starting from Nodes 0 and n-1(i.e. Node 13), we construct two link-disjoint binary spanning trees of generalized binary de Bruijn graph. These two spanning trees constructed will cover all links and nodes of the corresponding generalized de Bruijn graph. A binary tree is called as complete if the number of nodes n, is a power of 2, else it is incomplete. Further, directed links connecting a node to its parents represent a Parental relation (P-relation); and the directed links that connect a node to its children represent a Filial relation (F-relation).

JOURNAL OF COMPUTING, VOLUME 4, ISSUE 2, FEBRUARY 2012, ISSN 2151-9617 https://sites.google.com/site/journalofcomputing WWW.JOURNALOFCOMPUTING.ORG

59

until it eaches its destination. Each node has two outgoing and two incoming connections to other nodes via shuffle (rotate left by one bit) and shuffle-exchange (rotate left by one bit and complement LSB) operations to neighboring nodes [21]. Owing to the fact that these connections are unidirectional, the degree of the network is the same as the onedimensional mesh networks (or linear array network). The diameter of a de Bruijn network with size N, that is, the distance between nodes 0 and N-1, is equal to log (N).

5. SIMULATIONS RESULT
A) GDB(2,9)

4.SIMULATION EXPERIMENTS
All of the topology parameters can be described as a script file in Tcl. A part of the ns-2 script file about constructing the topology is shown below. #------------------------------#-------- Global Parameters ---#------------------------------set d 2 set n 9 #------------------------------#------------------------------#Create nodes(switch) for {set x 0} {$x < $n} {incr x} { set sw([expr ($x)]) [$ns node] $sw([expr ($x)]) color blue } #Create links between the switch-switch for {set j 0} {$j < $n} {incr j} { for {set r 0} {$r < $d} {incr r} { set i [expr ($j*$d+$r) % $n] if {$i != $j} { $ns simplex-link $sw($i) $sw($j) 1Mb 10ms DropTail } } } #Create nodes(Resource) for {set x 0} {$x < $n} {incr x} { set res([expr ($x)]) [$ns node] $res([expr ($x)]) shape square $res([expr ($x)]) color red } #Create links between the switch-Resource for {set x 0} {$x < $n} {incr x} { $ns duplex-link $sw($x) $res($x) 1Mb 10ms DropTail }

Fig. 4: de Bruijn Graph (D=2,N=9)

B) GDB(2,16)

Fig. 5: de Bruijn Graph (D=2,N=16)

JOURNAL OF COMPUTING, VOLUME 4, ISSUE 2, FEBRUARY 2012, ISSN 2151-9617 https://sites.google.com/site/journalofcomputing WWW.JOURNALOFCOMPUTING.ORG

60

C) GDB(3,9)

REFERENCES
[1] J. Park, I. Kim, S. Kim, S. Park, B. Koo, K. Shin, K. Seo, and J. Cha, MPEG-4 video codec on an ARM core and AMBA, in Proc. Of Workshop and Exhibition on MPEG-4, Jun. 2001, pp. 9598. R. Hofmann and B. Drerup, Next generation CoreConnect processor local bus architecture, in 15th Annual IEEE International ASIC/SOC Conference, Sep. 2002, pp. 221225. C. Roark and F. Jackson, New developments in a PI-Bus specification by the JIAWG and SAE, in Proc. of the IEEE National Aerospace and Electronics Conference, vol. 2, May 1992, pp. 760 766. S. Kubisch, C. Cornelius, R. Hecht, D. Timmermann, Mapping a Pipelined Data Path onto a Network-on-Chip, University of Rostock, Institute of Applied Microelectronics and Computer Engineering, 4-6 July 2007 Industrial Embedded Systems, 2007. J. Park, I. Kim, S. Kim, S. Park, B. Koo, K. Shin, K. Seo, and J. Cha, MPEG-4 video codec on an ARM core and AMBA, in Proc. Of Workshop and Exhibition on MPEG-4, Jun. 2001, pp. 9598. R. Hofmann and B. Drerup, Next generation CoreConnect processorlocal bus architecture, in 15th Annual IEEE International ASIC/SOC Conference, Sep. 2002, pp. 221225. C. Roark and F. Jackson, New developments in a PI-Bus specication by the JIAWG and SAE, in Proc. of the IEEE National Aerospace and Electronics Conference, vol. 2, May 1992, pp. 760 766. M. Harmanci, N. Escudero, Y. Leblebici, and P. Ienne, Quantitativemodelling and comparison of communication schemes to guaranteequality-of-service in networks-on-chip, in IEEE International Sympo-sium on Circuits and Systems, vol. 2, May 2005, pp. 17821785. S. D. Mediratta, J. Draper, Performance Evaluation of Probe-Send Fault-tolerant Network-on-chip Router , 2007 IEEE S.D. Mediratta, J. Draper, Characterization of a Fault-tolerant NoC Router, 2007 IEEE. LBNL Network Simulator, http://www-nrg.ee.lbl.gov/ns/ The network simulator-ns-2,available at http://www.isi.edu/nsnam/ns/ M. Ali, M. Welzl, A. Adnan, F. Nadeem , " Using the NS-2 Network Simulator for Evaluating Network on Chips (NoC)" International Conference on Emerging Technologies, pp.506 512, 2006. Hosseinabady, M. and Kakoee, MR and Mathew, J. and Pradhan, DK , Reliable network-on-chip based on generalized de Bruijn graph, IEEE International High Level Design Validation and Test Workshop, HLVDT 2007. Pages 3-10, 2007. www.isi.edu/nsnam/ns. R. Lemaire, F. Clermidy, Y. Durand, D. Lattard, and A. Jerraya, Performance Evaluation of a NoC-Based Design for MC-CDMA Telecommunications Using NS-2, in The 16th IEEE International Workshop on Rapid System Prototyping, Jun. 2005, pp. 2430. G. P. Liu and K. Y. Lee, Optimal Routing Algorithms for Generalized de Bruijn Digraph, International Conference on Parallel Processing, 1993, pp. 167-174. J. Mao, C. Yang, Shortest Path Routing and Fault-tolerant Routing on de Bruijn Networks, Networks, vol.35, pp.207-215, 2000. M. Hosseinabady, J. Mathew and D. K. Pradhan, Application of de Bruijn graphs to NoC, DATE-WKS, 2007, pp. 111-116. M. R. Samanathan and D. K. Pradhan, The de Bruijn Multiprocessor Network: a Versatile Parallel Processing and Sorting Network for VLSI, IEEE Trans. Comp., vol. 38, pp.567-581, 1989. A. Louri and H. Sung, An Efficient 3D Optical Implementation of Binary de Bruijn Networks with Applications to Massively Parallel Computing, Second Workshop on Massively Parallel Processing Using Optical Interconnections, 1995, pp.152-159.

[2]

[3]

[4]

[5]

[6]

[7]

[8] Fig. 6: de Bruijn Graph (D=3,N=9)

D) GDB(3,16)

[9] [10] [11] [12] [13]

[14]

[15] [16]

[17]

[18] Fig. 7: de Bruijn Graph (D=3,N=16) [19] [20]

6. CONCLUSIONS AND FUTUREWORK


In this paper, we have discussed the major research challenges in future NoC platforms to providing QoS. A novel simulation of Generalized de Bruijn have presented by ns-2, which is suitable for a wide range of applications in network-on-chip applications. Therefore, further research should perform to find additional simplifications and improvements of the methods.

[21]

You might also like