This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Network on chip is an efficient communication architecture built on chip for system on chip architectures . It allows integrating a large number of processing, computational as well as storage blocks on a single chip . Network on chip architectures has overcome a large number of system on chip's disadvantages and are also scalable . In this proposal, we try to define different protocols of a network on chip; with an effort to build it with a special concept of colors. To the best of our knowledge this is an effort to build different protocols of a network on chip which could avoid traffic by describing it with the help of waveforms and necessary figures.
As we know that the number of transistors/chip in any system is to increase beyond a billion, which means that the technology scaling which is been less than 50 nm at the end of this decade . So, we will have to apply some new methods to manage this huge number of transistors on chip, and for the virtue of this System on Chip and Network on Chip are the two main implementation approaches . Presently, we see there are a lot of products, such as cell phones and even portable computers are all implemented on a silicon chip . Due to ever increasing number of transistors  they will have a complex design and also long time to market . As traditionally, communication between processing elements was all based on buses . However, for large multiprocessor system on chip's, that too with many processing elements it is expected that the bus will become a bottleneck from the point of performance, scalability and also power dissipation; in order to overcome this network on chip's have been introduced. We know that the wires can be scaled only to some extent and no attempts can be made in the future to further scale the number of wires . This problem is overcome by network on chips where it can be scaled to any limit by just reducing the number of nodes in the network.
Network on chip is a new era of communication within a system , where the communication between different cores is undergone not by the help of wires but with a special routing technique. Network on chip provides efficient communication  between all the cores in a system on chip . The communication takes place by the help of packets where each one of it, takes a specific route as designed by the programmer. This will make use of three different types of packets in order to make or break a connection between different cores or systems on a system on chip. A new concept of colors is been introduced which will help in less power consumption over traditional wire topology. This is interesting because most of the today's networks on chip designers are struggling for a way to come up with a network which gives better performance with reduced power consumption. The theme to choose this project is to build an efficient network on chip by introducing the concept of colors along with a few protocols which is helpful for the transmission, flow and reception of data packets in the built network and to study the working of it.
Statically routing of packet is a technique where the designer of the network decides the forwarding of packets from one core to several different cores within the network. For the virtue of this, there are three different types of packets made use of:
1. Route establishment packet.
2. Data packet.
3. Route destruction packet.
The concept of using three different types of packets reflects the title 'statically routed network on chip' where the network makes use of static methods for routing of packets in the network. Once the network is built successfully, a route establishment packet is forwarded from the source point i.e the core from which the packet has to be forwarded to the destination point i.e where the packet has to be destined. This type of packet establishes a fixed route for a specific kind of a packet where the concept of color is made use of. The route establishment packet marks the route with a specific color which the data packet makes use to reach the destination core from the specific source point. Once the route is set, corresponding data packets of the same color is forwarded from the source till it meets its destination. The use of color in the packet neglects the fact of repeatedly specifying the source and destination address in the data packet which helps in very less power consumption as well as using fixed route without the occurrence of much traffic. Following figure shows how systems transmit packets in the network on chip in order to attain communication. Different colors are used to indicate different routes that are fixed by sending route establishment packets in order to transmit data packets through the route. Once when there is no need for the communication link and the transmission of data is successful the color route is subsequently destroyed by sending a route destruction packet.
Figure 1: INTRODUCTION OF THE CONCEPT OF COLORS
Figure 2: NODE OF A NETWORK
This is a simple node architecture  which consists of
5 bus segments
Bus segments are of 16 bits size and the control signals (enable and strobe) are each 1 bit in size. The two buffers in the node are 512 bits each and are accommodated to save data packets during its transmission. The significance of using two buffers is explained in detail at the later stages.
In order to accomplish a network on chip, many of these nodes are connected together using different topologies to build a network. When many of such nodes are connected together and to different cores in a system, communication between them is possible. A packet of several bits of a particular kind (in our case color) travels from its source node through many of such nodes in order to reach its destination node and its corresponding core in a system.
As explained above there are many topologies in a network on chip, few are:
In all these topologies mesh topology is simplistic in nature and has gained maximum considerations by the designers .
NETWORK ON CHIP ARCHITECTURE
Figure shows the network on chip architecture. In fact this is just the replica of a number of nodes which are connected to one another in all the directions to come up to this architecture . The architecture shown below is a simple example of a mesh topology  which is of a matrix 4*4 . There can be any number of nodes in the network and also can be connected in any fashion. The nodes in the network are connected simple excluding the control signals so as to retain the simplicity of the network.
Figure 3: NETWORK ON CHIP ARCHITECTURE
In order to attain communication in a network on chip firstly, a packet known as route establishment packet is been transmitted which contains information about the type of color, source and destination address of the packet, directions it needs to follow, as well as the number of nodes it needs to pass through(counter) in order to reach the destination. This type of packet is transmitted to fix a colored route for the forthcoming data packet. And all these information about the source and destination address, type of color, directions as well as counter is been stored in the routing table. Next, a data packet is been transmitted where in it contains no additional information else than the type of color. When a particular type of colored packet is recognized in the network, the routing table provides additional data such as the number of hops through the nodes and respective directions it need to follow in order to reach its destination. The routing table plays an important role by maintaining the information of all the packets in the memory. When all the particular colored data packets are transferred from the respective source to its destination a route destruction packet is transmitted to erase the information about this particular packet in the routing table.
"A protocol refers to a set of standard rules that enables systems in a network to connect and transmit data to one another". In other words protocol is a convention or standard that controls or enables the connection, communication and data transfer between computing endpoints . In our project we could include a few protocols necessary to reduce traffic of packets in the network and to obtain efficient communication between different cores.
A packet can enter a buffer if and only if any one of the two buffers in the node is free (empty). If both the buffers are full then the packet will have to wait until the buffer gets empty.
In order to attain packet transfer, one should request for the segment as well as buffer. Only when any one of the buffer in the node is free, the respective node enables the request and a packet is saved in the buffer and a corresponding strobe signal is sent after the reception of it.
Figure 4: PACKET WAITING FOR APPROVAL Figure 5: PACKET IN BUFFER
Figure 6: TIMING DIAGRAM  FOR PROTOCOL 1
Suppose there are two packets from two different nodes waiting to pass through the same node and only one buffer is empty, then the packet which arrives at the respective node first is allowed and the other packet will have to wait until any one of the buffer in the node is free.
Figure 7: TWO DIFFERENT PACKETS WANTS TO ACCESS THE SAME NODE
Figure 8: GREEN PACKET KNOCKS THE NODE FIRST
Figure 9: GREEN PACKET IS IN THE BUFFER, RED PACKET WAITING FOR ANY BUFFER TO GET EMPTIED
Figure 10: TIMING DIAGRAM FOR PROTOCOL 3
In the timing diagram it is assumed that the black packet is forwarded to some other node when green packet arrives and red packet takes the place of black packet.
When 2 buffers in a node are free, and if two different colored packets from two different nodes want to pass through the same node but both in different directions, then the transfer of packet takes place simultaneously.
Figure 11: RED PACKET WANTS TO MOVE TO BOTTOM NODE AND GREEN PACKET WANTS TO MOVE TO
Figure 12: BOTH GREEN AND RED PACKETS ARE IN THE CENTRE BUFFER WANTING TO REACH ITS DESTINATION
Figure 13: BOTH NODES HAVE MOVED TO THEIR RESPECTIVE NODES
Figure 14: TIMING DIAGRAM FOR PROTOCOL 4
Consider a condition when any system core on a system on chip say core A is transferring packets to any other system core on the same system on chip say core B with a particular packet color say red; then if in case core B wants to send some packets to core A simultaneously, then, the color of the packet used by core B should be different from that of core A i.e should be any other color than red in this case. Core B will have to establish a separate route to core A or can also use the same route which is used by core A by sending another route establishment packet from core B to core A.
The mechanism of sending a packet from a system core to several different cores simultaneously on a system on chip is not considered i.e the mechanism of copying a particular packet into several different routes at the same time. So, in order to send the packets to different cores, one should complete transmitting its packets to the first core and then turn on the next. For virtue of this the source core has to first establish a route to the first core, transmit the data packets, and soon after the transmission of packets is completed, the route is destroyed. Next the same procedure is followed to transmit packets to the second core. There is a delay organized for the second and the subsequent core till it starts receiving packets.
It is possible that 2 or more system cores on a system on chip transmit a same color packet to different other system cores. This criteria works only when it is considered that the transmitting route of these packets do not cross over each other; Because if the routes match each other then the network may find it difficult to recognize between the packets and it can so happen that the packets reach wrong destination or some time an horrendous network failure in cases.
There can be numerous routes from one system core to several different destination cores. This criteria works only when all the routes have different colors. All these routes can even cross over as many numbers of times as required in a system on chip.
SUMMARY AND CONCLUSIONS
Network on chips are the emerging network solutions for better system on chip designs. Network on chips have tackled many disadvantages of system on chips. Many network on chip techniques have proven to be efficient for communication in many system on chips designs.
For static routing of packets in a network on chip we made use of three types of packets which are known as route establishment packet, data packet and route destruction packet.
We carried out detailed explanations' of the three types of packets i.e the route establishment in a network with the help of a route establishment packet where the details of the forth coming data packet such as the source address, destination address, color of the packet, directions and counter are been carried by the route establishment packet and saved in the routing table, and how the data packet makes use of these information by carrying just the color and the necessary data in order to reach the destination. We also discussed how the communication link (route) between two system cores is destroyed after the communication is successful.
We proposed the architecture of a node in the network on chip and also shown how a small node successfully turns up to be the building block of a network on chip. We also discussed about different network on chip topologies. Mesh topology is made use due to its simplicity in architecture and our network on chip architecture is based on the same topology.
Finally, we are successful in proposing different protocols in order to achieve an efficient network on chip with no constraints. Here, it is an effort made to just example the use of the concept of colors in the network on chip, how this technique will be useful in the near future which will help in avoiding huge traffic of packets in an network on chip. Additionally, the use of colors to represent packets can lead to very less power dissipation in network on chips.