Slack-Time Aware Dynamic Routing Schemes for on-chip networks

University dissertation from Linköping : Department of Computer and Information Science, Linköpings universitet

Abstract: 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 NoC interconnects 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 varies, leading to time intervals where there is no GT traffic using the bandwidth reservation. These intervals are referred to as slack-time. If the slack can not be used this leads to unnecessarily reduced performance of BE traffic, since a part of the available network capacity becomes blocked. This thesis deals with methods to efficiently use the slack-time for BE traffic. The contributions include three new dynamic schemes for slack distribution in NoC. First, a scheme to inform 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.

  This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.