Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

SIMULATING THE TRIBA NOC ARCHITECTURE

TriBA(Triplet Based Architecture) is a Network on Chip processor(NoC) architecture which merges the core philosophy of Object Oriented Design with the hardware design of multicore processors[1].We present TriBASim in this paper, a NoC simulator specifically designed for TriBA.In TriBA ,nodes are connected in recursive triplets .TriBA network topology performance analysis have been carried out from different perspectives [2] and routing algorithms have been developed [3][4] but the architecture still lacks a simulator that the researcher can use to run simple and fast behavioural analysis on the architecture based on common parameters in the Network On Chip arena. TriBASim is introduced in this paper ,a simulator for TriBA ,based on systemc[6] .TriBASim will lessen the burden on researchers on TriBA ,by giving them something to just plug in desired parameters and have nodes and topology set up ready for analysis.

International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Daniel Gakwaya,GaoYuJin, Jean Claude Gombaniro and Jean Pierre Niyigena Department of Computer Science, Beijing Institute of Technology,Beijing, ABSTRACT TriBA(Triplet Based Architecture) is a Network on Chip processor(NoC) architecture which merges the core philosophy of Object Oriented Design with the hardware design of multicore processors[1].We present TriBASim in this paper, a NoC simulator specifically designed for TriBA.In TriBA ,nodes are connected in recursive triplets .TriBA network topology performance analysis have been carried out from different perspectives [2] and routing algorithms have been developed [3][4] but the architecture still lacks a simulator that the researcher can use to run simple and fast behavioural analysis on the architecture based on common parameters in the Network On Chip arena. TriBASim is introduced in this paper ,a simulator for TriBA ,based on systemc[6] .TriBASim will lessen the burden on researchers on TriBA ,by giving them something to just plug in desired parameters and have nodes and topology set up ready for analysis. KEYWORDS Keywords: NOC ,triba ,simulator,systemc 1.INTRODUCTION The last decade has seen Networks on chip emerge as a viable replacement for the traditional bus based interconnection system that has dominated in systems on chip for at least 3 decades. This is due the flexibility of design and most importantly the reduction in energy consumption for computing chips inside our electronic devices Networks on chip offer [5]. Networks on chip were introduced by a few pioneer papers that pointed out that future system on chip designs will be limited the quality of the interconnection system between computing modules [6, 7, 8]. They proposed a brand new idea that views the System on Chip as a micro-network of components. New designs would borrow ideas from the Data Networks research area and replace bus based interconnection systems with packet switched networks between modules within the System on Chip. Although Networks on Chip have a lot of similarities with Data Networks, there are differences one needs to consider .For instance NoCs are constrained to work within small distances inside the SoC while Data Networks can span kilometres of distance [6] .Also the links connection structure is more predictable for NoCs than it is for Data Networks .This led to completely new designs, protocol stacks and routing algorithms new Networks on Chip would be built upon. It is also important to note that the micro-network of components way of thinking used in NoCs allows abstraction in Traffic Modelling [9]. Numerous networks on chip architectures have been proposed in academia and industry, the topologies such as 2-D Mesh, Torus and Hypercube have been used in various network on chip designs. Along with these topologies, new routing algorithms, switching techniques and flow DOI : 10.5121/ijmnct.2014.4603 21 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 control mechanisms are selectively combined to meet the particular needs of the system on chip design [9]. TriBA is a network on chip architecture that enforces the concept of Object Oriented Design in the way SoCs are designed [10] .It is suitable for sophisticated embedded applications with multiple concurrent processing centres. This topology’s advantage over other 2D topologies such as hypercube topology is ease of realization and assembly [1]. Its nodes are connected in triplets, and higher order TriBA networks are recursively deduced from lower order ones. TriBASim is introduced in this paper, a simulator based on systemc specifically designed to meet the daily needs of a researcher working on TriBA . The rest of this paper is organized as follows: Section 2 explores already present NoC simulators and studies their intended use. Section 3 introduces TriBA and discusses the details relevant to our design; a NoC architecture for TriBA is developed in Section 4. The details of our TriBA NoC router are covered in Section 5 and Section 6 shows how we rely on ORION[11,12] for power consumption and area computation analysis for our simulator. Section 7 gives the results of our simulations. Sections 8 and 9 respectively outline future plans for TriBASim and conclude our paper. 2. RELATED WORK Numerous Network on Chip simulators have been developed before, targeting different areas in research and industry .Orion [11,12] was developed to run power and area analysis for Networks On Chips .Users input router and link components to build different network configurations and run their analysis .Power and area analysis for TriBASim was basen on On Orion power models .Noxim[13] NoC simulator is based on systemc ,and it can be used to evaluate the quality of a NoC in terms of delay throughput ,area and power consumption. Modified versions of Noxim have been used to run performance analysis using some popular topologies such as torus and twisted torus [14]. NIGRAM [15] is another Noc Simulator also based on systemc .It uses discrete events and is cycle accurate .It is very useful when testing routing algorithms on some regular topologies .One should also mention Nostrum[16] ,a project focusing on developing Network-on-Chip architecture. It addresses the communication issues from the physical to the application levels .These are the simulators that have been relevant to this research ,interested readers can refer to [17] to dig more and see a more detailed list . 3. TRIBA OVERVIEW “A picture is worth a thousand words!” , Fig[1] and Fig[2] will be the basis for our description of TriBA . Fig[1] displays the low level architecture for a triBA node and Fig[2] emphasizes network aspects of a TriBA interconnection which is the focus of our design .We scratch the surface on the concepts used in our design and the interested reader is referred to more in depth references where appropriate . Just like common computer architectures out there, our architecture is composed of computing modules, memory modules and the interconnection system to allow these two to communicate [18]. For triBA however special care was taken to separate computations from communication .It is composed of three sub-modules as shown in Fig[1] .ProcUnit carries out computations ,DataUnit is simply a chunk of read/write memory store our data and InterUnit ,the focus of our design, takes care of communications [1,18] .ProcUnit and DataUnit are abstracted away in our design to focus on network aspects of triBA and InterUnit is viewed as a node from here on . 22 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Fig[1] TriBA Architecture Fig[2] IDC132 addressed interconnected nodes Each node is assigned an address .TriBA uses an addressing mechanism specifically designed for nodes in triplets ---IDC132 .It has impressive properties such as the reflexive symmetry of IDC132 addresses and the 120°rotation. These combined with the vertex distance computation help remarkably when computing the distance (hops) between nodes in our routing algorithms [19] . 4. TRIBA NOC ARCHITECTURE Fig[3] shows the main components of a TriBA node . The TriBApplication models end nodes in the TriBA ecosystem, which does not have to be bothered in the process of switching and routing packets (or flits) to their destinations. It represents the Processing Module .Its main task is injecting packets into the network and receiving packets from the network. If node A is communicating (sending information) with node B on a TriBA NoC ,the TribApplication of node A injects packets into the network through its injection channel and the TribApplication of node B receives the packet through its receive channel .It is important to note that the data port of a TriBApplication may have sending or/and receiving capabilities .All this is decided based the specific needs in your design. TriBApplications in TriBASim support both sending and receiving. Data rate is the frequency at which packets are injected into the network .It is expressed in bits per second. The size of packets to be sent through the network can be configured before the simulation .One can use that packet size to deduce the packet injection frequency. Simulation time is the amount of time for which simulation runs .Packets are injected into the network until simulation time runs out .Also the user may be given the capability to specify the maximum number of bits that can be injected into the network by TriBApplications. TriBApplications inject packets into the network synchronously .Packets are injected with a certain injection probability. This is if a TriBApplications injects one packet per clock cycle into the network, each network router routes one packet per clock cycle and receiving applications also receive one packet per clock cycle. Packets are injected for a certain amount of time. This time and the clock frequency are user specified parameters. TriBANode represents a network node .TriBApplications connect to it and embodies packet forwarding and routing capabilities—a router. All this through sub-modules we describe in the following sections. 23 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Fig[3] The architecture of the TriBASim simulator TriBARouter’s task is to route packets from source to destination through the network. Switching mechanisms allow it to decide output ports the packet being forwarded should choose and routing algorithms help decide the next hop(TriBANode) where the packet will be sent to. Within the TriBASwitchingProtocol module ,a switching technique is specified .This along with other parameters can be specified by the user.Our simulator currently implements a wormhole switching mechanism .Other switching schemes may be subject of further improvements. TriBARoutingProtocol, just like the TriBASwitchingProtocol is a module that embodies the routing techniques used in the TriBA architecture. Routing algorithms have been developed for TriBA , TDRA ( Table Look up Deterministic Routing Algorithm ) is one of them: when a node receives a message ,it has to decide if it is the recipient of the message or if it has to forward it to neighbouring nodes .When determining the route in TDRA , there is no need to store all the network information in the node ,and thus, the transmission overhead it might have generated is avoided[20] . The algorithm uses two tables: a Channel Status Table (CST) that stores the working state of all the output ports of the node and a Route Table, that stores output port to be chosen for each destination node in the network, from the current node. DDRA (Distributed Deterministic Routing Algorithm)[21] is another routing algorithm for TriBA .It has no routing table at all, the transfer of messages is carried out based on the inherent addressing properties of TriBA nodes. IDC 132 enforces locality, this allows the message to get directly to the destination node if it is local and only go across triplet boundaries when there is need to. IDC132 also allows telling the exact location of the node in the entire interconnection network just by looking at its address. The current version of TriBASim supports DDRA . TriBANetDevice can be compared to the Networks Interface Cards of common computers in Data Networks. It is responsible for sending and receiving packets within neighbouring nodes and TriBANodes connect to the network through it. TriBARouter directly connects to TriBANetDevices. Depending on the routing protocol being used ,a TriBANetDevice will be 24 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 chosen to send a packet. The packet will go out through the channel that connect to that TriBANetDevice and will arrive at the node at the other end through the corresponding TriBANetDevice. TriBANetDevices have queues on their input and output terminals, this allows us to implement channel buffering. Users have the capability to tune the size of these queues. It is important to note that the size of these buffers is limited. For this reason, the network might not be able to buffer all the packets that are injected. To deal with this, we store all the data that can’t be sent currently to the local memory of the Processing Element until the network is ready to handle it. The same technique was also used in [24]. TriBANetDevices check input queues to see if there are available packets ready to be sent. If there are any, the router is tasked with computing the route for the packet located at the head of the queue. When the packet is ready to be sent, the only thing that might stand in the way of the send is the availability of the channel. When the channel is available, data is written to the channel and the packet is sent. The TriBANocChannel implements those channels directly connected to the TriBANetDevice.One can use a few parameters to qualify and classify TriBANocChannels.Data rate is the bandwidth of the channel ,in other words it is the number of bits per second that can be sent over the channel. Delay is the amount of time one has to wait until currently available data starts to be sent. The sending of data over the channel can be uni-directional or bidirectional (half-duplex or full-duplex) .We have implemented full-duplex TriBANocChannels in our simulator .The physical length of the link between nodes can also be specified. PACKET FORMAT A Flit is the smallest possible data unit that can be sent over the network, the width of the flit( 8bits ,16bits ,…..) is specified by the width of the buffers at the endpoints of TriBANocChannels. Packets are made of flits .The first flit from a packet is called a head flit. Beside the head flit, a packet can contain other data flits. The last flit in a packet is called a tail flit. The information contained in the header flit (the source and destination of the packet,…) is used to route it through the network. Data in the header of the packet is read and analysed by routers but not the data payload. The head flit is the head of the packet. In addition to the header, a head packet may also contain other body flits (These may be allocated depending on the specifics of a design). Data packets are only made of body flits. The table below shows the contents of each field in our packet header Fig[4] Packet format 25 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Table [1] Fields of the triBA Noc packet header Fig[5]TriBA NoC packet header format Our simulator currently uses the source, destination and dataFlits fields .The Dist field is not used because our router uses IDC132 addressing .One can easily know the distance form a node to another just by looking at their addresses. We keep this field in our design as it may be used for further improvements to the simulator. 5. THE TRIBASIM ROUTER TriBASim has been implemented in systemC , SystemC is a set of C++ classes and macros which provide an event-driven simulation interface in C++. These facilities enable a designer to simulate concurrent processes; each described using plain C++ syntax. SystemC processes can communicate in a simulated real-time environment, using signals of all the data types offered by C++, some additional ones offered by the SystemC library, as well as user defined. In certain respects, SystemC deliberately mimics the hardware description languages VHDL and Verilog, but is more aptly described as a system-level modelling language [22]. The architecture for our TriBANocRouter is shown in the Fig[6]. It comprises a routing component, a switching component and buffers. The Processing Unit (TriBApplication) uses input channel to send data to the network and the output channel to receive data from the network. The three pairs of buffers reflect the three neighbours each TriBA node may have. The buffers are labelled North, East and West for clarity. The size of the buffers can be specified as a simulation parameter in the simulator. Packets get in the router through input channels from the Processing Element or neighbouring nodes. Packets are stored in the corresponding input buffers until they are forwarded. To be able to forward the packet, the router uses the Routing component to compute the output port out of which the packet will be sent. The routing protocol used within our TriBANoC network is incorporated within this component. It is this routing protocol that is used to determine the route followed by our packet. The router needs to carry out route computation only for the head flit. Other flits within a packet simply follow the head flit. This is achieved through a chunk of memory in the router used to store packets ‘route. When a head flit is sent the route is computed and stored. This route is valid until the tail flit of the packet is forwarded. After this a new packets’ head flit might be sent and the previous route is discarded for the newly computed route. 26 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Fig[6] TriBA NoC Router Architecture After the route for the packet is computed and known, the packet is ready to be switched to its output port (channel buffer).The switching technique used by our router determines when the flits will leave the router for another one through the output channel. Our switch is implemented as a crossbar. In other words any input channel could be coupled to any output channel. It is important to note that one needs to take into account output buffer space availability though. The switch must prevent from writing to a piece of buffer space that is being used to transfer another packet. Once the flit gets to its output channel it is ready to be forwarded to the other end of the channel and this only if the channel is in idle state, i.e can transmit other flits. One should notice the importance of having output channel buffers in this design. If they were not available the switch would have to prevent packet switching when the channel is not in idle state. At the cost of increased buffer space communication is improved. Virtual channels make our router more robust in that they allow packets that would otherwise be blocked to pass. For example if a packet is coming from the North Port and headed to the West and can’t pass because another packet is using the West port, the North port blocks even if there are other packets that are headed to the East port which is idle for the moment. With virtual channels introduced this packet uses another Channel Buffer and goes East without problems. With virtual channels introduced, an allocator is needed to allocate virtual channels to packets .Also an arbiter is needed to handle situations when there are multiple requests for a single resource. Another example would be two packets one coming from the East another coming from the West both headed to the North, which one do we let pass? In our design the arbiter uses the First In First Out d arbitration mechanism and when there are competing requests for the output buffer ,it serves the request that came first and other requests are stored in a waiting queue. Requests that came first are assigned high priority. TRAFFIC PATTERNS Traffic patterns are communication patterns using permutations that are commonly performed in parallel numerical algorithms [25]. With these patterns a node cannot generate different destination addresses, the generated destination nodes are always the same for one particular 27 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 source node. In the following we present the traffic patterns used by TriBASim. These patterns are implemented as a set of C++ classes whose objects can be embedded in each TriBANode instance. We consider that a nodes’ address is represented by a unique string of n bits (They have , ,……….. , ). to comply with the I DC132 addressing mechanism) : ( IDC 132 ADJUSTED BIT COMPLEMENT TRAFFIC With this traffic pattern, the destination node is obtained by complementing the bits of the source node. ( , ,……….. , ) → ( , ,……….. , . ) We adjust this traffic pattern to IDC132 by discarding invalid addresses and replacing any generated string of two 0’s by a string of two 1’s.The numbers of bits in an address is determined by the order of our TriBA NoC. BIT REVERSE TRAFFIC In this traffic pattern, the destination address is obtained by reversing the bits of the source node. ( , ,……….. , ) → ( , ,............ , ). It is important to note that with this traffic pattern it is possible to generate a destination address that is exactly identical to the source node address. In this case the generated packet is simply ignored and not injected into the network. UNIFORM RANDOM TRAFFIC The above mentioned traffic patterns do not reflect a uniform utilization of the network. We therefore also included a uniform random traffic pattern. The generated destination address is completely random. After generation a purely random process is carried out to make sure the generated address is a valid TriBA NoC IDC132 address. 6. POWER CONSUMPTION AND AREA COMPUTATIONS Our analysis in terms of power consumption and area have been carried out using ORION.ORION is a power and area simulator for Networks on Chip developed at Princeton University. It was initially developed way back in 2002 and it is now widely used by the research community for NoC power consumption estimation. Their first version proposed a power model for Network on Chip routers. Dynamic and leakage power models for the basic components of NoC routers such as crossbars, arbiters and buffers were proposed. Version 2.0 of the simulator, compared to the initial one introduced remarkable improvements. Some new power models were introduced: link and clock power models and router and link area models. Also the technology models were updated. Three operating modes (high, normal and low power modes) were made available at 90 nm and 65 nm technologies, scaling down up to 32 nm. Global power consumed by a SoC can be decomposed into 3 components [26]: dynamic power, short circuit power and leakage power. Dynamic power is the power dissipated when charging 28 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 circuit nodes. Also called active power, this is used while the circuit is performing its functions. Short circuit power is the power due to temporary short circuit currents that occur when switching. It is very small and usually not taken into account. Leakage power is primarily due to an unwanted sub-threshold current in the transistor channel, when the transistor is turned off. As technology goes below 65 nm, leakage power becomes more important, as compared to dynamic power. .f stands The dynamic power in ORION is formulated as P = E ⋅ f , where energy E =α ⋅C ⋅ for the clock frequency, α the activity factor, C the load capacitance and the supply voltage. The key in these power computations is in finding a way to compute the load capacitance. Once it is found, the clock dynamic power model for clock, registers, buffers, allocators, arbiters and links can be deduced. As an example the link load capacitance is = + + where is the input capacitance of the following repeater, and are the ground and coupling capacitance of the wire. The load capacitance values for various components of the routers can be obtained from components datasheets. We use the total leakage current value to compute leakage power. (i, s)= W(i, s) ( (i, s) (i, s)) . and ORION defines this current as are the sub-threshold and the gate leakage current per unit of transistor width for a specific technology.(i, s) is the effective transistor width of component i at input state s. For each i and s, ' and were obtained through simulations using models at 65 nm technology. A layout model for logic gates is used to calculate router and link area. Router area is estimated by summing the areas of all its building blocks and taking into account the area between blocks. To be able to compute the area of a block, it is first decomposed into logic gates. The area for buffers is computed by considering the word line and bit line lengths of the FIFO (First In, First Out) buffer: Area= . where =F( +2( + ) ) and =B( +( + ) ) .B is the buffer size, in flits. F is the flit size, in bits. The memory cell width and height is given by and ( accounts for wire spacing). The number of read and respectively write ports are noted with Pr and Pw. Link area is computed using the following formula:!"#$ the wire width and % is the spacing between wires. = F( +% ) % where is We have integrated ORION2.0 libraries into TriBASim.The parameters for ORION are kept in the SIM_port.h configuration file. Most of the parameters have been kept to their defaults except for those specified by TriBASim at simulation time. For example our simulations are run for NoCs at 90 nm technology. The NoC clock frequency, flit and buffer size are set by TriBASim .The rest of the parameters are tightly related to our TriBA NoC router architecture. These are the number of input and output ports and the number of virtual channels. Fig[7] shows a UML diagram of how ORION is integrated within TriBASim. 29 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Fig[7] ORION integration within triBASim Every time that a flit is routed and each time a flit goes through a link TriBASim makes a call to ORION. Dynamic and leakage power needed to route and transmit the flit is then computed. The measured power values are summed and stored in dynamicPower and leakagePower data members. We keep track of the number of flits whose power has been computed in the filtCount data member variable.This information is enough to compute the average power consumed by all routers and links in the simulated TriBA NoC network. To compute the power consumed by the entire network simulated by TriBASim we use a method from the TriBATopology class.The method totalTriBANoCPower() returns the total power consumed by our NoC.This method simply carries out a summation of the dynamic and leakage power.The area for all routers and channels in the network is calculated in a similar way.totalTriBANocArea() computes the area for the entire NoC.With the power consumed by the NoC at our fingertips we can compute the Energy consumed by our NoC simply by multiplying Power by the simulation time. 7. CASE STUDIES In this section we show the results of the simulations we run using TriBASim.The simulator keeps track of each flit and packet that is injected into the NoC. We rely on ORION for power and area computations. We show that TriBASim can be used to give the user a deeper insight into the mechanics of how packets and flits are transmitted into the TriBA NoC by logging the path followed by packets form source to destination. TriBA networks of different orders (3 nodes, 9nodes and 27 nodes) are compared in in terms of performance when submitted to various throughputs. We also study the performance of a TriBA NoC of 27 nodes when submitted to different traffic patterns with the increased clock cycle for data flits. Finally we investigate the variations in performance when the input buffer channel size is varied. Performance is evaluated in terms of the average latency of packets.[27]Defines the latency of a network as the time required for a packet to traverse the network, from the time the head of the packet arrives at the input port to the time the tail of the packet departs the output port. TriBASim keeps track of maximum and minimum packet latencies. The average latency of the packets is 30 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 expressed as a function of packet injection probability. The first 1000 cycles of the simulation are warm-up cycles [27] and we injected packets for 10000 cycles. We only collected packets for the remaining 9000 cycles in our analysis. The simulations were run on a Intel quad-core at 2.66 GHz, 4 GB DRAM system with Linux(XUbuntu 14.04) installed. Fig[8] Packet tracing Simulation within TriBASim In Fig[8] we traced the path followed by a packet from source to destination logging port information on each intermediary node .Critical network information can be easily obtained by activating convenience methods on node and triplet classes .In Fig[9] we studied how average latency in the network varies per link throughput per number of nodes Results show that lower level triBA networks saturate earlier than their higher level counterparts. Fig[9] Delay-latency-node count analysis within TriBASim In the next experiment, we used different higher clock frequencies to inject data flits into the network than we did for the head flits. This was done with input channel buffers of 9 flits in size and packets of 8 flits in length. Flits were a few bytes wide. We carried out this experiment on different traffic patterns. The results are shown in Fig[10]. 31 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 (a)Adjusted Bit-Complement traffic (b)Bit reverse traffic ( c ) Uniform random traffic Fig[10] Variations in average packet latency as we increase the packet injection frequency for different traffic patterns. One immediately notices that the average latency drops significantly when data flits are sent much faster than head flits (The network performs much better).The average latency is slightly higher for the bit complement traffic pattern than it is for other patterns. This is because with the bit complement traffic pattern, each generated packet is injected into the NoC. This is not true for other traffic patterns we used because on a particular node, it is possible to generate a packet with the source and destination set to that nodes address; therefore it is not injected in the network. We ran the same simulations on a 9 node TriBA NoC. These ran approximately 6 times faster than they did for a 27 node TriBA NoC. The subject of our last experiment was studying the effect of the allocated buffering resources on the average latency of the network; in other words performance. Uniform random traffic was used for 10000 cycles with 1000 cycles for warm-up. At every cycle, a flit may be sent into the network with a given probability of injection. Fig [11] shows the results. We used 9 flits wide packets, and the size of the input channels was varied uniformly, from 2 up to 8 flits. It can be seen that the more buffering resources we provide the better our NoC performs. Also one should notice that the effect of increasing buffering resources becomes more important with increased numbers of injected packets. 32 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Fig[11] Average packet latency vs input buffer size. 8. FUTURE WORK TriBASim can already run the common chores that Network On Chip simulators are supposed to run .We hope to add support for multiple routing algorithms other than DDRA .The simulations we have run are based on random traffic models .We hope to delve into studying the characteristics of the traffics patters for our in-house SoCs and incorporate them in future versions. 9. CONCLUSIONS A new simulator for the Triplet Based NoC architecture has been suggested .We went through a broad overview of TriBA and displayed its basic characteristics and state of the art .Furthermore, we described the details for the design of our simulator and ended the paper with practical uses showing its usefulness to the triBA researcher and anyone interested in NoCs in general. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9] J I Wei2xing , QIAO Bao2jun , A New Non Von Neumann Architecture TriBA ,SHI Feng , L IU Bin , Transactions of Beijing Institute of Technology , Vol .26 No.10 Oct 2006 . TriBA Interconnection Topology Structure and Its Performance Analysis ,LIU Cai-xia, SHI Feng, QIAO Bao-jun, HAROON Ur Rashid, SONG Hong ,Journal of Beijing Institute of Technology ,Computer Engineering , Vol .36 No .15. Table lookup determined routing algorithm for triplet based hierarchical interconnection network QIAO Bao jun, SHI Feng, JI Wei xing, LIU Bin,Journal of Beijing Institute of Technology ,Computer Applications ,Vol .26 No .9 Triplet-based hierarchical interconnection network and design of its routing algorithm,QIAO Bao-jun, SHI Feng, JIWei-xing ,Journal of Beijing Institute of Technology ,Computer Engineering and Design ,Vol .28 No .18. From “Bus” and “Crossbar” to “Network-On-Chip”,Arteris S.A.Copyright 2009 Arteris S.A. All rights reserved. A generic architecture for on-chip packet-switched interconnections ,Guerrier, P.Greiner, A;Univ. Pierre et Marie Curie, Paris, France Design, Automation and Test in Europe Conference and Exhibition 2000. Proceedings A Router Architecture for Networks on Silicon ,Edwin Rijpkema, Kees Goossens, and Paul Wielage ,Philips Research LaboratorieProf. Holstlaan 4, 5656 AA Eindhoven, The Netherlands, Proceedings of progress 2001, 2nd workshop on embedded systems Networks on Chip A New Paradigm for Systems on Chip Design ,Luca Benini ,Giovanni De Micheli ,IEEE ,System-on-Chip, 2005. Proceedings. 2005 International Symposium on System On Chip ,17-17 Nov.Page(s) 2 – 6 Survey of Network on Chip (NoC) Architectures & Contributions,Ankur Agarwal,Cyril Iskander,Ravi Shankar,Journal of Engineering,Computing and Architecture ISSN 1934-7197 Volume 3,Issue 1,2009 33 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 [10] Locality Aware Optimal Task Scheduling Algorithm for TriBA A Novel Scalable Architecture,KHAN Haroon-U r-Rashid,SHI Feng, Jour nal of Beijing Institute of Technology , 2008, Vol. 17, No. 3 [11] ORION 2.0: A Fastand Accurate NoC Power and Area Model for Early-Stage Design Space Exploration,Andrew B. Kahng, Bin Li, Li-Shiuan Peh and Kambiz Samadi, Proceedings of Design Automation and Test in Europe (DATE), Nice, France, April 2009. [12] Orion: A Power-Performance Simulator for Interconnection Networks ,Hang-Sheng Wang Xinping Zhu Li-Shiuan Peh Sharad Malik,Proceedings of MICRO 35, Istanbul, Turkey, November 2002 [13] http://www.noxim.org/ [14] Enhanced Noxim simulator for performance evaluation of network on chip topologies,Swaminathan, K.,Thakyal, D. ; Nambiar, S.G. ; Lakshminarayanan, G. ; Seok-Bum Ko,Engineering and Computational Sciences (RAECS), 2014 Recent Advances,978-1-4799-2290-1 [15] open source simulator for network on chip ,Monika Gupta1, S. R. Biradar2, B. P. Singh,International Journal of Computers & Technology ,Volume 4 No. 2, March-April, 2013, ISSN 2277-3061 [16] A High Level Power Model for the Nostrum NoC , Penolazzi, S, Jantsch, A. ,Digital System Design: Architectures, Methods and Tools, 2006. DSD 2006. 9th EUROMICRO Conference [17] http://networkonchip.wordpress.com/2011/02/22/simulators/ [18] A New Non Von Neumann Architecture TriBA ,SHI Feng , J I Wei2xing , QIAO Bao2jun , L IU Bin ,Transactions of Beijing Institute of Te,Vol. 26 No. 10 ,Oct . 2006 [19] Comparison of the Triplet-based Hierarchical Interconnection Network and 2-D Mesh for Multi-core Processor ,Journal of Beijing Institute of Technology ,2007 ,Vol .34 No .9 [20] Table lookup determined routing algorithm for triplet based hierarchical interconnection network QIAO Bao jun, SHI Feng, JI Wei xing, LIU Bin,Journal of Beijing Institute of Technology ,Computer Applications ,Vol .26 No .9 [21]Triplet-based hierarchical interconnection network and design of its routing algorithm,QIAO Bao-jun, SHI Feng, JIWei-xing ,Journal of Beijing Institute of Technology ,Computer Engineering and Design ,Vol .28 No .18. [22] SystemC: From the Ground Up, Second Edition , David C. Black (Author), Jack Donovan (Author), Bill Bunton (Author), Anna Keist (Author) Springer; 2nd edition (December 30, 2010),ISBN-10: 0387699570 ISBN-13: 978-0387699578 [23] Orion: A Power-Performance Simulator for Interconnection Networks ,Hang-Sheng Wang Xinping Zhu Li-Shiuan Peh Sharad Malik,Microarchitecture, 2002. (MICRO-35). Proceedings. 35th Annual IEEE/ACM International Symposiu,0-7695-1859-1 [24] Jingcao Hu, Umit Y. Ogras, and Radu Marculescu, “System-Level Buffer Allocation for Application-Specific Networks-on-Chip Router Design,” Computer- Aided Design of Integrated Circuits and Systems, IEEE Transactions on, vol. 25, no. 12, pp. 2919-2933, 2006 [25] J. Duato, S. Yalamanchili, and L. M. Ni, Interconnection Networks: An Engineering Approach, 1st ed. Institute of Electrical & Electronics Enginee, 1997. [26] D. Albonesi, “Power- and Reliability-Aware Microarchitecture,” in ACACES 2000 Course, Terrassa (Barcelona), Spain, 2009. [27] W. J. Dally and B. P. Towles, Principles and Practices of Interconnection Networks, 1st ed. Morgan Kaufmann, 2004. 34 International Journal of Mobile Network Communications & Telematics ( IJMNCT) Vol. 4, No.6,December 2014 Authors: Daniel GAKWAYA A student at BEIJING INSTITUTE OF TECHNOLOGY currently pursuing his master’s degree,School of Computer Science ,Department of Advanced Embedded Computing . His research interests lie in Network Optimizations and Computer Graphics. Gao Yu Jin Associate Professor, BEIJING INSTITUTE OF TECHNOLOGY ,School of Computer Science , Department of Advanced Embedded Computing,His research interest include Embedded Multicore Processors. Jean Claude GOMBANIRO Master’s student at the School of Computer Science Of BEIJING INSTITUTE OF TECHNOLOGY , Department of Natural Languages Processing His research interests lie in Big Data Processing and Language recognitionAlgorithms . Jean Pierre NIYIGENA Master’s student at the School of Computer Science Of BEIJING INSTITUTE OF TECHNOLOGY , Department of Data Networks .His research interests lie in Geolocation Algorithms . 35