NoC Placement & Routing

Document Sample
NoC Placement & Routing Powered By Docstoc
					NoC Placement & Routing


     A survey on Placement &
     Routing challenges in
     Network-on-Chip systems
Overview

        What is the difference between SoC
         and NoC placement and routing?
     1           2               4                     1        2            4

                            3                                           3

     5           6                                     5        6

                                 7                                           7

     8                 9                               8            9



          10                11   12                        10           11   12




NoC Placement and Routing             Eyal Friedman 2008                          2
    Overview cnt’d
     NoC                                      SoC
            Added routers                          No routers
             (router I/F)                            (custom I/F)
            Packet-based                           Custom PE-to-PE
             protocol                                protocol
            Wormhole                               Direct
             communication                           communication
             (link sharing)

    NoC Placement and Routing   Eyal Friedman 2008                   3
Overview cnt’d

      The differences require the PEs in NoC to
       have a router I/F for incoming and outgoing
       communication with other PEs, and must
       cope with messages arriving in packets.
      The PEs main function, however, is the
       same.
      So how do placement algorithms for SoC
       and NoC differ?

NoC Placement and Routing   Eyal Friedman 2008       4
The General Placement
Problem (SoC)
      Given a set of fixed-cells (& soft-cells) with
       fixed pins, and a netlist of their connectivity,
       find the best location for each cell.
      How do we determine what is best?
      Cost-function. The input to the cost-function
       is a placed design and a netlist. The output
       is a price. The best price is the best solution.
      Usually we’ll want the cost-function to
       concentrate on Performance / Latency /
       Power / Temperature / Area.

NoC Placement and Routing   Eyal Friedman 2008        5
SoC routing
     Classically, placement is done such
      that total wirelength will be minimized.



                Air-line        Manhattan             Spanning tree




                             Rectilinear               Minimum Steiner
                            Spanning tree                   tree
NoC Placement and Routing               Eyal Friedman 2008               6
Algorithmic approaches to
SoC placement
      Algorithms based on netlist partitioning
            constructive approach for initial solution
            iterative improvement by cell-swaps
      force-directed methods
            connections between cells represent "dragging
             forces“
      quadratic placement
            analytical mathematical minimization
      simulated annealing
            iterative with randomness
      hybrid (mix of the above)
NoC Placement and Routing      Eyal Friedman 2008            7
Force-Directed approach
      In this method we
       assume that
       connections between
       modules create forces
       of attraction between
       them.
      The problem with this
       approach is that
       "Forces" pull towards
       local minima


NoC Placement and Routing   Eyal Friedman 2008   8
Force-Directed approach
     initial placement influence
                    Initial placement                        result




NoC Placement and Routing               Eyal Friedman 2008            9
Simulated annealing approach
      This method is a
       randomized
       procedure to find
       approximate
       solutions to
       optimization
       problems where
       greedy techniques
       don't work due to
       the presence of
       local minima.

NoC Placement and Routing   Eyal Friedman 2008   10
NoC Architecture
      Routing is one of the most crucial key
       factors which will decide over the success of
       NoC architecture based systems or their
       failure.
      Routing is, of course, directly dictated by
       placement.
      So how can we achieve the best placement
       in a NoC system?
      First we have to distinguish between the
       different types of NoC architectures…

NoC Placement and Routing   Eyal Friedman 2008     11
Tile-based 2D Mesh topology

                              PE    R        PE     R   PE   R   PE   R

             tile

                              PE    R        PE     R   PE   R   PE   R


 Processing
                     Router
  Element
                              PE    R        PE     R   PE   R   PE   R




                              PE    R        PE     R   PE   R   PE   R




NoC Placement and Routing      Eyal Friedman 2008                         12
        Regular 2-D Mesh topology

                                                                       PE           PE       PE       PE
                                    North
                                    input

                                                                R               R        R        R
                                     buffer
                          output
                          North




 router
                                                                       PE           PE       PE       PE


West                                           East
input
          buffer
                                              output            R               R        R        R
                          Crossbar
          West             switch                      East
                                              buffer
          output                                       input
                                                                       PE           PE       PE       PE
                   er
            b   uff
Proc
input            Proc.
                 output                                         R               R        R        R
                           buffer


                                    output
                                    South




                                                                       PE           PE       PE       PE
                          South
                          input




                                                                R               R        R        R



        NoC Placement and Routing                              Eyal Friedman 2008                          13
    Partially irregular 2D-Mesh
    topology
           contains oversized rectangularly shaped PEs.

            PE                                                                   PE     ∆y

R                                    PE                         PE         2∆y
                                                                                 ∆x
    PE             PE


R           R               R

                                                                ∆x
    PE                          PE        PE


R                  PE       R        R

                                                                     PE           2∆y
    PE                          PE        PE


R           R               R        R




                                                                     2∆x
    NoC Placement and Routing                  Eyal Friedman 2008                            14
Irregular Mesh topology
                                                            This kind of
  R                         R                                chip does not
                                    R                        limit the shape
                                                             of the PEs or
      R              R                                       the placement
                            R       R
                                                             of the routers.
                                                             It may be
                     R          R
                                                             considered a
                                                             "custom" NoC
      R



NoC Placement and Routing           Eyal Friedman 2008                    15
    Torus topology
                         Torus                                                  Folded Torus


       PE           PE           PE       PE                  PE                                  PE

                                                                                PE                                  PE
R             R            R          R               R                                   R

                                                                        R                                   R
       PE           PE           PE       PE                       PE                                  PE

                                                                                     PE                                  PE
R             R            R          R                   R                                   R

                                                                            R                                   R
       PE           PE           PE       PE                  PE                                  PE

                                                                                PE                                  PE
R             R            R          R               R                                   R

                                                                        R                                   R
       PE           PE           PE       PE                       PE                                  PE

                                                                                     PE                                  PE
R             R            R          R                   R                                   R

                                                                            R                                   R



    NoC Placement and Routing                  Eyal Friedman 2008                                                         16
Fat-Tree topology




NoC Placement and Routing   Eyal Friedman 2008   17
NoC Routing-Table
      Unlike regular SoC placement, NoC placement is
       not complete without a Routing Table.
      The Routing Table determines for each PE the
       route via which it will send packets to other PEs.
      The routing table directly influences traffic in the
       NoC.
      Here we can also distinguish between 2 methods:
            Static routing
            Dynamic (adaptive) routing



NoC Placement and Routing       Eyal Friedman 2008            18
Static routing

      The Routing Table is constant.
      The route is embedded in the packet
       header and the routers simply forward
       the packet to the direction indicated by
       the header.
      The routers are passive in their
       addressing of packets (simple routers).

NoC Placement and Routing   Eyal Friedman 2008   19
Dynamic Routing
      The routing table can change dynamically during
       operation.
      Logically, a route is changed when it becomes slow
       due to other traffic.
      possibly out-of-order arrival of packets.
      Usually requires more virtual channels.
      In this method we can identify 2 systems:
            Routing altering decisions are made in the routers (smart
             routers)
            Routing altering decisions are made in a dedicated central
             unit that receives traffic information from all the routers
             and can decide to change the routing table.

NoC Placement and Routing        Eyal Friedman 2008                    20
NoC placement & Routing
Algorithms
      The algorithms can “work” with PE’s
       Placement and Routing Tables, given the
       NoC’s arhcitecture and routing system.




NoC Placement and Routing   Eyal Friedman 2008   21
NoC placement & Routing
Algorithms
      In every mapping and placement algorithm we have
       to define a cost function by which to determine
       whether our algorithm is successful or not.
      Usually the cost function measures either
       performance, energy or temperature, or a hybrid of
       these.
      Most of the chip power is consumed in the
       communication links and the routers which are
       constantly active.
      Are NoC algorithms really different than SoC
       algorithms? Lets review some of them…

NoC Placement and Routing   Eyal Friedman 2008          22
Branch-and-Bound Algorithms
      Such algorithms walk through the searching
       tree that represents the solution space.
      Finding the optimal solution is equivalent to
       finding the legal leaf node which has the
       minimal cost.




NoC Placement and Routing   Eyal Friedman 2008     23
Generic Algorithms




NoC Placement and Routing   Eyal Friedman 2008   24
Split-Traffic Algorithms
      Bandwidth requirements can be significantly
       reduced by splitting the traffic between
       cores across multiple paths.
      Different routes between source and
       destination must all be minimal.
      It’s possible that two packets traveling from
       source to destination in different routes
       might "collide". The destination PE must
       know how to deal with this, or the system
       has to make sure this doesn’t happen.
NoC Placement and Routing   Eyal Friedman 2008     25
Split-Traffic Algorithms

            PE
                            PE        PE              PE
          SOURCE

      R              R           R            R


             PE             PE        PE              PE


      R              R           R            R

                                      PE
             PE             PE                        PE
                                     DEST

      R              R           R            R


             PE             PE        PE              PE


      R              R           R            R

NoC Placement and Routing                   Eyal Friedman 2008   26
Summary
      The main difference between SoC and NoC is the
       sharing of links.
      The algorithm's essence, however, is the same for
       SoC and NoC. In both cases we are trying to find
       an ideal placement (& routing) solution that will
       cause our design to be low in power/temperature
       and high in performance
      The same type of algorithms work for both cases.
      One noticeable difference is that in NoC routing we
       have much more options for design (fixed/adaptive
       routing , split traffic) because of the routers network.

NoC Placement and Routing   Eyal Friedman 2008                27
Summary cnt’d

      The same P&R algorithm can be
       applied to various NoC topologies
       (mesh, fat-tree, torus).
      Some topologies are better for certain
       designs than others.
      Most of the times, when one topology
       is better in performance, it is worse in
       power consumption.
NoC Placement and Routing   Eyal Friedman 2008    28
Further study
      Power-state PEs/routers adaptation.
      A popular power-saving method is powering
       down PEs on the chip when they are not
       needed.
      If a PE is shut-down and other PEs keep
       sending it packets, ultimately the congestion
       will cause a deadlock.
      A design solution has to be found for this
       issue. Also, if the PE is shut-down, can its
       router be shut-down too? If so, the routing
       table needs to adapt to this incident.
NoC Placement and Routing   Eyal Friedman 2008     29
Further study cnt’d
      High-Index routers
      In regular 2D mesh NoCs, a router usually has 4
       directions to forward an incoming packet, using 2
       bits for addressing.
      Adding one more address bit enables the router to
       forward incoming packets to up to 8 directions.
      This increases the router's X-bar and complexity,
       but reduces the number of routers in the NoC by 4.
      This could also greatly reduce power, because PEs
       that share the same router do not have to use the
       routers' links when communicating between
       themselves.
NoC Placement and Routing   Eyal Friedman 2008          30
High-Index router NoC
                    PE          PE   PE       PE       PE       PE      PE       PE


                            R             R                 R                R


                    PE          PE   PE       PE       PE       PE      PE       PE




                    PE          PE   PE       PE       PE       PE      PE       PE


                            R             R                 R                R


                    PE          PE   PE       PE       PE       PE      PE       PE




                    PE          PE   PE       PE       PE       PE      PE       PE


                            R             R                 R                R


                    PE          PE   PE       PE       PE       PE      PE       PE




                    PE          PE   PE       PE       PE       PE      PE       PE


                            R             R                 R                R


                    PE          PE   PE       PE       PE       PE      PE       PE




NoC Placement and Routing                          Eyal Friedman 2008                 31
backup




NoC Placement and Routing   Eyal Friedman 2008   32
Torus topology
      The main problem with the mesh topology is
       its long diameter that has negative effect on
       communication latency.
      Torus topology was proposed to reduce the
       latency of mesh and keep its simplicity.
      The only difference between torus and
       mesh topologies is that the switches on the
       edges are connected to the switches on the
       opposite edges through wrap-around
       channels.
NoC Placement and Routing   Eyal Friedman 2008     33
Fat-Tree topology

      The Fat-Tree is an indirect interconnection
       network based on a complete binary tree
      The bandwidth of the Fat-Tree increases as
       it goes closer to the root.
      Fat-Tree architecture is suitable for on chip
       network switching core.
      Tree-based topologies are useful for
       exploiting locality of traffic.

NoC Placement and Routing   Eyal Friedman 2008         34
Branch-and-Bound Algorithms
      Branch: An unexpanded node is selected and its
       next unmapped IP is enumeratively assigned to the
       remaining unoccupied tiles to generate the
       corresponding new child nodes. New Routing
       Tables are generated.
      Bound: Each of the newly generated child nodes is
       inspected to see if it is possible to generate the best
       leaf nodes later. A node can be trimmed away
       without further expansion if either its cost or its
       Lower Bound Cost (LBC) is higher than the lowest
       Upper Bound Cost (UBC) that has been found.


NoC Placement and Routing   Eyal Friedman 2008               35
Generic Algorithms
      A computational analogy of biological
       adaptive systems.
      Iterative by design.
      Generate an initial, random pool of possible
       solutions (chromosomes), which are
       evaluated in each iteration (generation) by a
       fitness function.
      The fitness function drives towards an
       optimized solution to the problem.

NoC Placement and Routing   Eyal Friedman 2008     36

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:13
posted:6/12/2012
language:
pages:36