3 ModelName = ElectricalMesh
5 # Query string used to choose what will be output by Orion
7 Energy>>ElectricalMesh:AvgUnicast@0 \
8 NddPower>>ElectricalMesh:Leakage@0 \
9 Area>>ElectricalMesh:Active@0 \
10 Area>>ElectricalMesh:GlobalWire@0 \
12 # Injection rate (# flits per cycle per site), assuming that the network is not
13 # saturated and uniform random traffic
17 dynamic = $(InjectionRate) * $(NumberSites) * $(Frequency) * $(Energy>>ElectricalMesh:AvgUnicast); \
18 leakage = $(NddPower>>ElectricalMesh:Leakage); \
19 total = dynamic + leakage; \
20 energy_per_bit = total / ($(InjectionRate) * $(Frequency) * $(NumberSites) * $(NumberBitsPerFlit)); \
21 active_area = $(Area>>ElectricalMesh:Active); \
22 global_area = $(Area>>ElectricalMesh:GlobalWire); \
23 print "Electrical Mesh Network:"; \
24 print " Dynamic power: " dynamic; \
25 print " Leakage power: " leakage; \
26 print " Total power: " total; \
27 print " Energy per bit: " energy_per_bit; \
28 print " Global Wire Area: " global_area; \
29 print " Active Area: " active_area; \
31 # Technology file (see other models in tech/models)
32 ElectricalTechModelFilename = tech/tech_models/Bulk45LVT.model
34 ###############################################################################
36 ###############################################################################
38 # Individual network components already optimize for timing, no need to do it
40 # Operating frequency (Hz)
43 # NOTE: If you adjust Frequency, make sure you adjust SWSR->LinkDataRate
44 # to make sure it is >= Frequency, since the model doesn't support serialization
50 ReportTiming->StartNetNames = [CK]
52 ###############################################################################
53 # Model specifications
54 ###############################################################################
59 NumberBitsPerFlit = 64
60 NumberSitesPerRouter = 1
62 # Router-specific parameters (see dsent.cfg.router for descriptions)
63 Router->NumberVirtualNetworks = 3
64 Router->NumberVirtualChannelsPerVirtualNetwork = [1,1,1]
65 Router->NumberBuffersPerVirtualChannel = [4,1,1]
66 Router->InputPort->BufferModel = DFFRAM
67 Router->CrossbarModel = MultiplexerCrossbar
68 Router->SwitchAllocator->ArbiterModel = MatrixArbiter
69 Router->ClockTreeModel = BroadcastHTree
70 Router->ClockTree->NumberLevels = 6
71 Router->ClockTree->WireLayer = Intermediate
72 Router->ClockTree->WireWidthMultiplier = 1.0
74 # Electrical Link-specific parameters
75 Link->WireLayer = Global
76 Link->WireWidthMultiplier = 1.0
77 Link->WireSpacingMultiplier = 1.0
79 # Physical organization properties
80 # Note: This model assumes a square network layout