Slack-Time Aware Dynamic Routing Schemes for On-Chip Networks
Licentiate Thesis No. 1303, Dept. of Computer and Information Science, Linköping University, August 2007
Network-on-Chip (NoC) is a new on-chip communication paradigm for future IP-core based System-on-Chip (SoC), designed to remove a number of limitations of today’s on-chip interconnect solutions. A Nointerconnects cores by means of a packet switched micro-network, which improves scalability and reusability, resulting in a shorter time to market. A typical NoC will be running many applications concurrently, which results in shared network capacity between different kinds of traffic flows. Due to the diverse characteristic of applications, some traffic flows will require real-time communication guarantees while others are tolerant to even some loss of data. In order to provide different levels of Quality-of-Service (QoS) for traffic flows, the communication traffic is separated into different service classes. Traffic in NoC is typically classified into two service classes: the guaranteed throughput (GT) and the best-effort (BE) service class. The GT class offers strict QoS guarantees by setting up a virtual path with reserved bandwidth between the source (GT-producer) and destination (GT-consumer), called a GT-path. The BE class offers no strict QoS guarantees, but tries to efficiently use any network capacity which may become available from the GT traffic. The GT traffic may not fully utilize its bandwidth reservation if its communication volume vaorm the routers of a GT-path about available slack is evaluated. The GT-producer plans its traffic using a special playout buffer and issues control packets containing the actual amount of slack-time available. The results show that this scheme leads to decreased latency, jitter and packet drops for BE traffic. Secondly, an extension to this scheme is evaluated, where slack is distributed among multiple GT-paths (slack distribution in space). This opens up the possibility to balance the QoS of BE traffic flows which overlap with the GT-paths. Thirdly, a scheme to distribute slack among the links of a GT-path (slack distribution in time) is proposed. In this approach, arriving GT-packets, at a certain router along the GT-path, can wait for a maximum defined amount of time. During this time, any waiting BE traffic in the buffers can be forwarded over the GT-path. The results confirm that this is especially important during high BE-traffic load, where this technique decreases the jitter of BE traffic considerably.
[A07] Daniel Andreasson, "Slack-Time Aware Dynamic Routing Schemes for On-Chip Networks", Licentiate Thesis No. 1303, Dept. of Computer and Information Science, Linköping University, August 2007