FuncUnit.py (4486:aaeb03a8a6e1) | FuncUnit.py (4556:00281bdfeb31) |
---|---|
1# Copyright (c) 2006-2007 The Regents of The University of Michigan 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 --- 15 unchanged lines hidden (view full) --- 24# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 25# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26# 27# Authors: Kevin Lim 28 29from m5.SimObject import SimObject 30from m5.params import * 31 | 1# Copyright (c) 2006-2007 The Regents of The University of Michigan 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 --- 15 unchanged lines hidden (view full) --- 24# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 25# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26# 27# Authors: Kevin Lim 28 29from m5.SimObject import SimObject 30from m5.params import * 31 |
32class OpType(Enum): 33 vals = ['(null)', 'IntAlu', 'IntMult', 'IntDiv', 'FloatAdd', | 32class OpClass(Enum): 33 vals = ['No_OpClass', 'IntAlu', 'IntMult', 'IntDiv', 'FloatAdd', |
34 'FloatCmp', 'FloatCvt', 'FloatMult', 'FloatDiv', 'FloatSqrt', 35 'MemRead', 'MemWrite', 'IprAccess', 'InstPrefetch'] 36 37class OpDesc(SimObject): 38 type = 'OpDesc' 39 issueLat = Param.Int(1, "cycles until another can be issued") | 34 'FloatCmp', 'FloatCvt', 'FloatMult', 'FloatDiv', 'FloatSqrt', 35 'MemRead', 'MemWrite', 'IprAccess', 'InstPrefetch'] 36 37class OpDesc(SimObject): 38 type = 'OpDesc' 39 issueLat = Param.Int(1, "cycles until another can be issued") |
40 opClass = Param.OpType("type of operation") | 40 opClass = Param.OpClass("type of operation") |
41 opLat = Param.Int(1, "cycles until result is available") 42 43class FUDesc(SimObject): 44 type = 'FUDesc' 45 count = Param.Int("number of these FU's available") 46 opList = VectorParam.OpDesc("operation classes for this FU type") | 41 opLat = Param.Int(1, "cycles until result is available") 42 43class FUDesc(SimObject): 44 type = 'FUDesc' 45 count = Param.Int("number of these FU's available") 46 opList = VectorParam.OpDesc("operation classes for this FU type") |