I. Introduction
Current technologies allow the integration of millions of transistors in one chip, creating the so-called Systems-on-Chip (SoCs), with a large number of cores on a single chip [1]. As more complex systems are developed, better design techniques are also required to reduce design time and costs. One of these techniques aims at improving the communication among the embedded cores by providing a communication platform that is scalable, and can be reused for a number of systems. This platform, called Network-on-Chip (NoC) [1], [2], can be defined as a structured set of routers and point-to-point channels interconnecting the processing cores of a SoC, in order to support communication among them. Data is transferred by means of messages, which can be divided into smaller units called packets.