47 int globalGuardLatency = 1;
72 const int busWidth = 32;
73 const int immWidth = 0;
75 Bus*
raBus =
new Bus(
"ra_out_to_ra_in", busWidth, immWidth, busExt);
104 if (numOfOperands == 1) {
106 }
else if (numOfOperands == 2) {
114 "Trying to add a GCU operation with a different number of "
115 "operands than 1 or 2.");
128 if (numOfOperands < 2) {
#define assert(condition)
void ConfigurePipeline(TTAMachine::ExecutionPipeline *pipeline, int numOfOperands)
TTAMachine::Socket * raOut
BlocksGCU(TTAMachine::Machine &mach, const std::string &name, TTAMachine::AddressSpace &asInstr)
TTAMachine::SpecialRegisterPort * ra
TTAMachine::Socket * pcIn
TTAMachine::HWOperation * CreateHWOp(const std::string &name, int numOfOperands)
TTAMachine::Socket * raIn
void BindPorts(TTAMachine::HWOperation *hwOp, int numOfOperands)
TTAMachine::Socket * valIn
std::vector< TTAMachine::HWOperation * > ops
TTAMachine::ControlUnit * gcu
void setReturnAddressPort(const SpecialRegisterPort &port)
void addPortRead(int operand, int start, int duration)
virtual void setAddressSpace(AddressSpace *as)
ExecutionPipeline * pipeline() const
virtual void bindPort(int operand, const FUPort &port)
virtual void addBus(Bus &bus)
virtual void setGlobalControl(ControlUnit &unit)
virtual void addSocket(Socket &socket)
virtual void attachSocket(Socket &socket)
void setDirection(Direction direction)
void attachBus(Segment &bus)