O3CPU.py (10785:f56c10663a01) | O3CPU.py (10934:5af8f40d8f2c) |
---|---|
1# Copyright (c) 2005-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 --- 100 unchanged lines hidden (view full) --- 109 LFSTSize = Param.Unsigned(1024, "Last fetched store table size") 110 SSITSize = Param.Unsigned(1024, "Store set ID table size") 111 112 numRobs = Param.Unsigned(1, "Number of Reorder Buffers"); 113 114 numPhysIntRegs = Param.Unsigned(256, "Number of physical integer registers") 115 numPhysFloatRegs = Param.Unsigned(256, "Number of physical floating point " 116 "registers") | 1# Copyright (c) 2005-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 --- 100 unchanged lines hidden (view full) --- 109 LFSTSize = Param.Unsigned(1024, "Last fetched store table size") 110 SSITSize = Param.Unsigned(1024, "Store set ID table size") 111 112 numRobs = Param.Unsigned(1, "Number of Reorder Buffers"); 113 114 numPhysIntRegs = Param.Unsigned(256, "Number of physical integer registers") 115 numPhysFloatRegs = Param.Unsigned(256, "Number of physical floating point " 116 "registers") |
117 |
|
117 # most ISAs don't use condition-code regs, so default is 0 118 _defaultNumPhysCCRegs = 0 119 if buildEnv['TARGET_ISA'] in ('arm','x86'): 120 # For x86, each CC reg is used to hold only a subset of the 121 # flags, so we need 4-5 times the number of CC regs as 122 # physical integer regs to be sure we don't run out. In 123 # typical real machines, CC regs are not explicitly renamed 124 # (it's a side effect of int reg renaming), so they should 125 # never be the bottleneck here. 126 _defaultNumPhysCCRegs = Self.numPhysIntRegs * 5 127 numPhysCCRegs = Param.Unsigned(_defaultNumPhysCCRegs, 128 "Number of physical cc registers") | 118 # most ISAs don't use condition-code regs, so default is 0 119 _defaultNumPhysCCRegs = 0 120 if buildEnv['TARGET_ISA'] in ('arm','x86'): 121 # For x86, each CC reg is used to hold only a subset of the 122 # flags, so we need 4-5 times the number of CC regs as 123 # physical integer regs to be sure we don't run out. In 124 # typical real machines, CC regs are not explicitly renamed 125 # (it's a side effect of int reg renaming), so they should 126 # never be the bottleneck here. 127 _defaultNumPhysCCRegs = Self.numPhysIntRegs * 5 128 numPhysCCRegs = Param.Unsigned(_defaultNumPhysCCRegs, 129 "Number of physical cc registers") |
130 131 # most ISAs don't use vector regs, so default is 0 132 _defaultNumPhysVectorRegs = 0 133 numPhysVectorRegs = Param.Unsigned(_defaultNumPhysVectorRegs, 134 "Number of physical vector registers") 135 |
|
129 numIQEntries = Param.Unsigned(64, "Number of instruction queue entries") 130 numROBEntries = Param.Unsigned(192, "Number of reorder buffer entries") 131 132 smtNumFetchingThreads = Param.Unsigned(1, "SMT Number of Fetching Threads") 133 smtFetchPolicy = Param.String('SingleThread', "SMT Fetch policy") 134 smtLSQPolicy = Param.String('Partitioned', "SMT LSQ Sharing Policy") 135 smtLSQThreshold = Param.Int(100, "SMT LSQ Threshold Sharing Parameter") 136 smtIQPolicy = Param.String('Partitioned', "SMT IQ Sharing Policy") --- 26 unchanged lines hidden --- | 136 numIQEntries = Param.Unsigned(64, "Number of instruction queue entries") 137 numROBEntries = Param.Unsigned(192, "Number of reorder buffer entries") 138 139 smtNumFetchingThreads = Param.Unsigned(1, "SMT Number of Fetching Threads") 140 smtFetchPolicy = Param.String('SingleThread', "SMT Fetch policy") 141 smtLSQPolicy = Param.String('Partitioned', "SMT LSQ Sharing Policy") 142 smtLSQThreshold = Param.Int(100, "SMT LSQ Threshold Sharing Parameter") 143 smtIQPolicy = Param.String('Partitioned', "SMT IQ Sharing Policy") --- 26 unchanged lines hidden --- |