1
2# Name of model to be built and evaluated
3ModelName = SWSRLink
4
5# Query string to choose what to evaluate (use '\' to enable multiline config)
6QueryString = \
7    Energy>>SWSRLink:Send@1 \
8    NddPower>>SWSRLink:Leakage@0 \
9    NddPower>>SWSRLink:RingTuning@0 \
10    NddPower>>SWSRLink:Laser@0 \
11    Area>>SWSRLink:Active@0 \
12    Area>>SWSRLink:Photonic@0 \
13    
14# Injection rate (# words per core cycle)
15InjectionRate                           = 1.0
16# Evaluation string
17EvaluateString                          = \
18    dynamic         = $(InjectionRate) * $(CoreDataRate) * $(Energy>>SWSRLink:Send); \
19    leakage         = $(NddPower>>SWSRLink:Leakage); \
20    ring_heating    = $(NddPower>>SWSRLink:RingTuning); \
21    laser           = $(NddPower>>SWSRLink:Laser); \
22    total           = dynamic + leakage + ring_heating + laser; \
23    energy_per_bit  = total / ($(InjectionRate) * $(CoreDataRate) * $(NumberBits)); \
24    active_area     = $(Area>>SWSRLink:Active); \
25    photonic_area   = $(Area>>SWSRLink:Photonic); \
26    print "Photonic Clos Network:"; \
27    print "    Dynamic power: " dynamic; \
28    print "    Leakage power: " leakage; \
29    print "    Laser power: " laser; \
30    print "    Ring Heater Power: " ring_heating; \
31    print "    Total power: " total; \
32    print "    Energy per bit: " energy_per_bit; \
33    print "    Active Area: " active_area; \
34    print "    Photonic Area: " photonic_area; \
35    
36# Technology file (see other models in tech/models)
37ElectricalTechModelFilename             = tech/tech_models/Bulk45LVT.model
38PhotonicTechModelFilename               = tech/tech_models/Photonics.model
39
40###############################################################################
41# Model specifications
42###############################################################################
43
44# Clos Parameters
45# Number of bits the link is responsible for delivering
46NumberBits                                      = 64
47# Core data rate
48CoreDataRate                                    = 1e9
49# Link data rate, if link data-rate > core data rate, SerDes will be applied
50LinkDataRate                                    = 1e9
51
52# Optimization parameters
53# Whether link specs will be optimized for power
54OptimizeLoss                                    = true
55# Optimize the laser/modulator power balance for the given link utilization,
56# ignored if optimize loss is set to false
57OptUtil                                         = 0.5
58# Insertion loss and extinction ratio (in dB), ignored if optimize loss is set
59# to true
60InsertionLoss                                   = 2.0
61ExtinctionRatio                                 = 6.0
62
63# Technology-based parameters
64# Type of the laser. Current valid choices are: (Standard, Throttled)
65# Note, if you change this to throttled, the laser gets lumped into dynamic
66# power, so change the Ndd power query for laser appropriately
67LaserType                                       = Standard
68# Ring tuning method. Current valid choices are:
69# (FullThermal, AthermalWithTrim, ThermalWithBitReshuffle, ElectricalAssistWithBitReshuffle)
70RingTuningMethod                                = ThermalWithBitReshuffle 
71    
72# Physical organization properties
73# Length of the link (in meters)
74Length                                          = 10e-3
75
76