The src1 and src2 registers and the operand can be latched in
at this point
- * Read request is set, which is ackowledged through the Scoreboard
+ * Read request is set, which is acknowledged through the Scoreboard
to the priority picker, which generates (one and only one) Go_Read
at a time. One of those will (eventually) be this Computation Unit.
m.d.sync += self.counter.eq(5)
with m.Elif(self.oper_i == 3): # SHIFT to take 7
m.d.sync += self.counter.eq(7)
+ with m.Elif(self.oper_i >= 4): # Branches take 6 (to test shadow)
+ m.d.sync += self.counter.eq(6)
with m.Else(): # ADD/SUB to take 2
m.d.sync += self.counter.eq(2)
with m.If(self.counter > 1):
# m.d.comb += self.alu.op.eq(self.oper_i)
# create a latch/register for the operand
- latchregister(m, self.oper_i, self.alu.op, src_l.q)
+ latchregister(m, self.oper_i, self.alu.op, opc_l.qn)
# and one for the output from the ALU
data_r = Signal(self.rwid, reset_less=True) # Dest register