1# Copyright (c) 2011 Advanced Micro Devices, Inc. 2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: redistributions of source code must retain the above copyright 7# notice, this list of conditions and the following disclaimer; 8# redistributions in binary form must reproduce the above copyright --- 18 unchanged lines hidden (view full) --- 27# Authors: Steve Reinhardt 28# Brad Beckmann 29 30from m5.params import * 31from m5.SimObject import SimObject 32 33class BasicLink(SimObject): 34 type = 'BasicLink' |
35 cxx_header = "mem/ruby/network/BasicLink.hh" |
36 link_id = Param.Int("ID in relation to other links") 37 latency = Param.Int(1, "latency") 38 # The following banwidth factor does not translate to the same value for 39 # both the simple and Garnet models. For the most part, the bandwidth 40 # factor is the width of the link in bytes, expect for certain situations 41 # with regard to the simple network. 42 bandwidth_factor = Param.Int("generic bandwidth factor, usually in bytes") 43 weight = Param.Int(1, "used to restrict routing in shortest path analysis") 44 45class BasicExtLink(BasicLink): 46 type = 'BasicExtLink' |
47 cxx_header = "mem/ruby/network/BasicLink.hh" |
48 ext_node = Param.RubyController("External node") 49 int_node = Param.BasicRouter("ID of internal node") 50 bandwidth_factor = 16 51 52class BasicIntLink(BasicLink): 53 type = 'BasicIntLink' |
54 cxx_header = "mem/ruby/network/BasicLink.hh" |
55 node_a = Param.BasicRouter("Router on one end") 56 node_b = Param.BasicRouter("Router on other end") 57 bandwidth_factor = 16 |