iew_impl.hh (13429:a1e199fd8122) iew_impl.hh (13453:4a7a060ea26e)
1/*
2 * Copyright (c) 2010-2013 ARM Limited
3 * Copyright (c) 2013 Advanced Micro Devices, Inc.
4 * All rights reserved.
5 *
6 * The license below extends only to copyright in the software and shall
7 * not be construed as granting a license to any other intellectual
8 * property including but not limited to intellectual property relating

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

71 instQueue(_cpu, this, params),
72 ldstQueue(_cpu, this, params),
73 fuPool(params->fuPool),
74 commitToIEWDelay(params->commitToIEWDelay),
75 renameToIEWDelay(params->renameToIEWDelay),
76 issueToExecuteDelay(params->issueToExecuteDelay),
77 dispatchWidth(params->dispatchWidth),
78 issueWidth(params->issueWidth),
1/*
2 * Copyright (c) 2010-2013 ARM Limited
3 * Copyright (c) 2013 Advanced Micro Devices, Inc.
4 * All rights reserved.
5 *
6 * The license below extends only to copyright in the software and shall
7 * not be construed as granting a license to any other intellectual
8 * property including but not limited to intellectual property relating

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

71 instQueue(_cpu, this, params),
72 ldstQueue(_cpu, this, params),
73 fuPool(params->fuPool),
74 commitToIEWDelay(params->commitToIEWDelay),
75 renameToIEWDelay(params->renameToIEWDelay),
76 issueToExecuteDelay(params->issueToExecuteDelay),
77 dispatchWidth(params->dispatchWidth),
78 issueWidth(params->issueWidth),
79 wbNumInst(0),
80 wbCycle(0),
79 wbWidth(params->wbWidth),
80 numThreads(params->numThreads)
81{
82 if (dispatchWidth > Impl::MaxWidth)
83 fatal("dispatchWidth (%d) is larger than compiled limit (%d),\n"
84 "\tincrease MaxWidth in src/cpu/o3/impl.hh\n",
85 dispatchWidth, static_cast<int>(Impl::MaxWidth));
86 if (issueWidth > Impl::MaxWidth)

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

97 wbStatus = Idle;
98
99 // Setup wire to read instructions coming from issue.
100 fromIssue = issueToExecQueue.getWire(-issueToExecuteDelay);
101
102 // Instruction queue needs the queue between issue and execute.
103 instQueue.setIssueToExecuteQueue(&issueToExecQueue);
104
81 wbWidth(params->wbWidth),
82 numThreads(params->numThreads)
83{
84 if (dispatchWidth > Impl::MaxWidth)
85 fatal("dispatchWidth (%d) is larger than compiled limit (%d),\n"
86 "\tincrease MaxWidth in src/cpu/o3/impl.hh\n",
87 dispatchWidth, static_cast<int>(Impl::MaxWidth));
88 if (issueWidth > Impl::MaxWidth)

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

99 wbStatus = Idle;
100
101 // Setup wire to read instructions coming from issue.
102 fromIssue = issueToExecQueue.getWire(-issueToExecuteDelay);
103
104 // Instruction queue needs the queue between issue and execute.
105 instQueue.setIssueToExecuteQueue(&issueToExecQueue);
106
105 for (ThreadID tid = 0; tid < numThreads; tid++) {
107 for (ThreadID tid = 0; tid < Impl::MaxThreads; tid++) {
106 dispatchStatus[tid] = Running;
107 fetchRedirect[tid] = false;
108 }
109
110 updateLSQNextCycle = false;
111
112 skidBufferMax = (renameToIEWDelay + 1) * params->renameWidth;
113}

--- 1529 unchanged lines hidden ---
108 dispatchStatus[tid] = Running;
109 fetchRedirect[tid] = false;
110 }
111
112 updateLSQNextCycle = false;
113
114 skidBufferMax = (renameToIEWDelay + 1) * params->renameWidth;
115}

--- 1529 unchanged lines hidden ---