iew_impl.hh (5215:68f719ce5496) | iew_impl.hh (5529:9ae69b9cd7fd) |
---|---|
1/* 2 * Copyright (c) 2004-2006 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 23 unchanged lines hidden (view full) --- 32// iew. There's a clear delay between issue and execute, yet backwards 33// communication happens simultaneously. 34 35#include <queue> 36 37#include "base/timebuf.hh" 38#include "cpu/o3/fu_pool.hh" 39#include "cpu/o3/iew.hh" | 1/* 2 * Copyright (c) 2004-2006 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 23 unchanged lines hidden (view full) --- 32// iew. There's a clear delay between issue and execute, yet backwards 33// communication happens simultaneously. 34 35#include <queue> 36 37#include "base/timebuf.hh" 38#include "cpu/o3/fu_pool.hh" 39#include "cpu/o3/iew.hh" |
40#include "params/DerivO3CPU.hh" |
|
40 41template<class Impl> | 41 42template<class Impl> |
42DefaultIEW | 43DefaultIEW<Impl>::DefaultIEW(O3CPU *_cpu, DerivO3CPUParams *params) |
43 : issueToExecQueue(params->backComSize, params->forwardComSize), 44 cpu(_cpu), 45 instQueue(_cpu, this, params), 46 ldstQueue(_cpu, this, params), 47 fuPool(params->fuPool), 48 commitToIEWDelay(params->commitToIEWDelay), 49 renameToIEWDelay(params->renameToIEWDelay), 50 issueToExecuteDelay(params->issueToExecuteDelay), 51 dispatchWidth(params->dispatchWidth), 52 issueWidth(params->issueWidth), 53 wbOutstanding(0), 54 wbWidth(params->wbWidth), | 44 : issueToExecQueue(params->backComSize, params->forwardComSize), 45 cpu(_cpu), 46 instQueue(_cpu, this, params), 47 ldstQueue(_cpu, this, params), 48 fuPool(params->fuPool), 49 commitToIEWDelay(params->commitToIEWDelay), 50 renameToIEWDelay(params->renameToIEWDelay), 51 issueToExecuteDelay(params->issueToExecuteDelay), 52 dispatchWidth(params->dispatchWidth), 53 issueWidth(params->issueWidth), 54 wbOutstanding(0), 55 wbWidth(params->wbWidth), |
55 numThreads(params->numberOfThreads), | 56 numThreads(params->numThreads), |
56 switchedOut(false) 57{ 58 _status = Active; 59 exeStatus = Running; 60 wbStatus = Idle; 61 62 // Setup wire to read instructions coming from issue. 63 fromIssue = issueToExecQueue.getWire(-issueToExecuteDelay); --- 1521 unchanged lines hidden --- | 57 switchedOut(false) 58{ 59 _status = Active; 60 exeStatus = Running; 61 wbStatus = Idle; 62 63 // Setup wire to read instructions coming from issue. 64 fromIssue = issueToExecQueue.getWire(-issueToExecuteDelay); --- 1521 unchanged lines hidden --- |