"Lut3",
"CarrySaveAdder",
"Rotator",
+ "Timer",
}, logging);
}
public class InterpreterProcess extends FleetProcess implements Runnable {
private Instruction[] instructions;
- public synchronized void sendWord(Destination d, BitVector word) {
- InterpreterPath path = (InterpreterPath)debugShip.getDock("in").getPath(d, new BitVector(1));
+ public synchronized void sendWord(Destination d, BitVector word) { sendWord(d, word, null); }
+ public synchronized void sendWord(Destination d, BitVector word, BitVector signal) {
+ InterpreterPath path = (InterpreterPath)debugShip.getDock("in").getPath(d, signal==null?new BitVector(1):signal);
((InterpreterDestination)d).
addDataFromFabric(new Packet(path, word, false));
}
}
public Fleet getFleet() { return Interpreter.this; }
public synchronized void sendInstruction(Instruction i) {
- Log.dispatch(i);
long il = writeInstruction(i, debugShip.getDock("in"));
Path path = debugShip.getDock("in").getPath(i.dock.getInstructionDestination(), null);
new Packet((InterpreterPath)path, new BitVector(getWordWidth()).set(il), false).send();