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