FuncUnit.py revision 3102
1from m5.SimObject import SimObject 2from m5.params import * 3 4class OpType(Enum): 5 vals = ['(null)', 'IntAlu', 'IntMult', 'IntDiv', 'FloatAdd', 6 'FloatCmp', 'FloatCvt', 'FloatMult', 'FloatDiv', 'FloatSqrt', 7 'MemRead', 'MemWrite', 'IprAccess', 'InstPrefetch'] 8 9class OpDesc(SimObject): 10 type = 'OpDesc' 11 issueLat = Param.Int(1, "cycles until another can be issued") 12 opClass = Param.OpType("type of operation") 13 opLat = Param.Int(1, "cycles until result is available") 14 15class FUDesc(SimObject): 16 type = 'FUDesc' 17 count = Param.Int("number of these FU's available") 18 opList = VectorParam.OpDesc("operation classes for this FU type") 19