LdsState.py revision 12697:cd71b966be1e
19155SN/A# Copyright (c) 2015 Advanced Micro Devices, Inc.
29155SN/A# All rights reserved.
39155SN/A#
49155SN/A# For use for simulation and test purposes only
59155SN/A#
69155SN/A# Redistribution and use in source and binary forms, with or without
79155SN/A# modification, are permitted provided that the following conditions are met:
89155SN/A#
99155SN/A# 1. Redistributions of source code must retain the above copyright notice,
109155SN/A# this list of conditions and the following disclaimer.
119155SN/A#
129155SN/A# 2. Redistributions in binary form must reproduce the above copyright notice,
139155SN/A# this list of conditions and the following disclaimer in the documentation
149155SN/A# and/or other materials provided with the distribution.
159155SN/A#
169155SN/A# 3. Neither the name of the copyright holder nor the names of its
179155SN/A# contributors may be used to endorse or promote products derived from this
189155SN/A# software without specific prior written permission.
199155SN/A#
209155SN/A# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
219155SN/A# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
229155SN/A# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
239155SN/A# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
249155SN/A# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
259155SN/A# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
269155SN/A# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
279155SN/A# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
289155SN/A# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
299155SN/A# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
309155SN/A# POSSIBILITY OF SUCH DAMAGE.
319105SN/A#
3210441Snilay@cs.wisc.edu# Authors: Joe Gross
3310441Snilay@cs.wisc.edu
349105SN/Afrom m5.defines import buildEnv
359105SN/Afrom m5.params import *
369105SN/Afrom m5.proxy import *
379105SN/A
3811108Sdavid.hashe@amd.comfrom MemObject import MemObject
399297SN/A
409105SN/Aclass LdsState(MemObject):
419297SN/A    type = 'LdsState'
429105SN/A    cxx_class = 'LdsState'
439297SN/A    cxx_header = 'gpu-compute/lds_state.hh'
449105SN/A    size = Param.Int(65536, 'the size of the LDS')
459184SN/A    range = Param.AddrRange('64kB', "address space of the LDS")
469105SN/A    bankConflictPenalty = Param.Int(1, 'penalty per LDS bank conflict when '\
479105SN/A                                    'accessing data')
4810919Sbrandon.potter@amd.com    banks = Param.Int(32, 'Number of LDS banks')
499105SN/A    cuPort = SlavePort("port that goes to the compute unit")
509297SN/A