Professional Documents
Culture Documents
Simulation The Generalized de Bruijn As Fault Tolerant Topology For Network On Chip
Simulation The Generalized de Bruijn As Fault Tolerant Topology For Network On Chip
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].
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.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.
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.
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 }
B) GDB(2,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]
D) GDB(3,16)
[14]
[15] [16]
[17]
[21]