X86TLB.py (7087:fb8d5786ff30) X86TLB.py (8752:28e899b7dee3)
1# Copyright (c) 2007 The Hewlett-Packard Development Company
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license

--- 21 unchanged lines hidden (view full) ---

30# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35#
36# Authors: Gabe Black
37
1# Copyright (c) 2007 The Hewlett-Packard Development Company
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license

--- 21 unchanged lines hidden (view full) ---

30# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35#
36# Authors: Gabe Black
37
38from m5.defines import buildEnv
39from m5.params import *
40from m5.proxy import *
41
42from BaseTLB import BaseTLB
43from MemObject import MemObject
44
38from m5.params import *
39from m5.proxy import *
40
41from BaseTLB import BaseTLB
42from MemObject import MemObject
43
45if buildEnv['FULL_SYSTEM']:
46 class X86PagetableWalker(MemObject):
47 type = 'X86PagetableWalker'
48 cxx_class = 'X86ISA::Walker'
49 port = Port("Port for the hardware table walker")
50 system = Param.System(Parent.any, "system object")
44class X86PagetableWalker(MemObject):
45 type = 'X86PagetableWalker'
46 cxx_class = 'X86ISA::Walker'
47 port = Port("Port for the hardware table walker")
48 system = Param.System(Parent.any, "system object")
51
52class X86TLB(BaseTLB):
53 type = 'X86TLB'
54 cxx_class = 'X86ISA::TLB'
55 size = Param.Int(64, "TLB size")
49
50class X86TLB(BaseTLB):
51 type = 'X86TLB'
52 cxx_class = 'X86ISA::TLB'
53 size = Param.Int(64, "TLB size")
56 if buildEnv['FULL_SYSTEM']:
57 walker = Param.X86PagetableWalker(\
58 X86PagetableWalker(), "page table walker")
54 walker = Param.X86PagetableWalker(\
55 X86PagetableWalker(), "page table walker")