IJNMT, Vol. V, No. 1 | June 2018 54 ISSN 2355-0082 Design of TTL Based Routing Algorithm on UTAR Network on Chip Communication Architecture Wahyudi Khusnandar 1 , Fransiscus Ati Halim 2 , Felix Lokananta 3 Computer Engineering Department, Universitas Multimedia Nusantara, Tangerang, Indonesia Received on March 20 th , 2018 Accepted on June 8 th , 2018 AbstractXY adaptive routing protocol is a routing protocol used on UTAR NoC communication architecture. This routing algorithm adapts shortest- path first algorithm, which it will not able to work optimally if the closest route have no longer enough bandwidth to continue the packet.The router will store Packet inside and forwarded to the nearest router when closest route has enough bandwidth. This paper suggests TTL based routing algorithm to resolve this issue. TTL based routing algorithm adapts XY adaptive routing protocol by adding several limits on RTL UTAR NoC and added bit in each packet sent by router. TTL based algorithm used more bit and parameters in choosing alternative routes inside the communication architecture. Use of TTL on TTL based routing different from use TTL on communication network. Packets that carry TTL value that equal to Maximum TTL will be route using XY adaptive routing protocol. TTL based routing algorithm has shown better performance compared to XY adaptive routing on some of the experiment done using MSCL NoC Traffic Pattern Suite. This research also proves that TTL based routing algorithm cannot work optimally on small- scaled architecture. KeywordsUTAR NoC; XY Adaptive Routing Protocol; MSCL Traffic Pattern Suite; RTL; TTL (key words) I. INTRODUCTION Mesh and Torus have been selected as topologies in UTAR NoC, because Mesh topology has been considered more by designer due to its simplicity.[1] Most NoC use 2D mesh topologies because of the good tradeoff between cost and performance, XY routing is very common, for mesh topologies, although not standard, due to its property of being deadlock- free.[2] Hence UTAR NoC implements Adaptive and deterministic XY routing.[1] There is a flaw on XY adaptive routing that is being used by UTAR NoC, which is XY routing protocol cannot choose another route other than the shortest path. So if the bandwidth is full in the possible route, the packet will be delayed until the bandwidth is available in that route, although there is an available bandwidth in other route. In this paper, a routing protocol which will using all available bandwidth in a router will be discussed. II. UTAR NOC MICROARCHITECTURE In UTAR NoC Flit, packet that will be send by Processing Block (PB) will be encapsulated to flit. Flit contains a valid bit, is_tail bit, destination bit, vitual channel bit, source bit, and data bit.[1] Fig.1 UTAR NoC’s Flit The “valid bit” fields define the validity of a flit. This field will be set as one when sending a new flit. “is tail” field determines whether a flit is a tail or not. A large packet can be broken down into several flits, and a tail flit is the last flit of this group. The destination field provides the information of the flit destination address. The width of this field may vary depending on the size of the network. The Virtual channel field indicates which VC is to be used to send out the flit. The source field provides the information of the flits sender address. The data field contains the data itself. [1] The UTAR NoC is composed of a number of UTAR NoC Routers. The number of the router depends on the size of the network itself. The UTAR NoC router has five ports connecitons which are the North, East, South, West and PB connections. There are eight pins for each port of the routers: flit_in pins is for the incoming flit from neighbour router or PB to the router. EN_flit_in pins is for the enable signal of the incoming flit to the router. flit_out pins is for the outgoing flit from the router to the next neighbour router. EN_flit_out pins is for enable signal of the outgoing flit to next router the incoming flit to the router. credit_in pins is for incoming credit from neighbour router or PB to the router. EN_credit_in is for the enable signal of the incoming credit to the router.