From: Adam Megacz Date: Mon, 13 Apr 2009 23:19:03 +0000 (+0000) Subject: Update proper stoppers X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=f30dd031623666fe11e95c41ec68cbc845cc7d27;p=fleet.git Update proper stoppers --- diff --git a/testCode/com/sun/vlsi/chips/marina/test/InstructionStopper.java b/testCode/com/sun/vlsi/chips/marina/test/InstructionStopper.java index a3ec9c5..2e9ede2 100644 --- a/testCode/com/sun/vlsi/chips/marina/test/InstructionStopper.java +++ b/testCode/com/sun/vlsi/chips/marina/test/InstructionStopper.java @@ -28,20 +28,6 @@ public class InstructionStopper extends ProperStopper { super(propInst, controlChain, dataChain, reportChain, cc, model, clockHack, indenter); } - public void fill(BitVector instr) { - if (instr.getNumBits()==MarinaPacket.PACKET_WIDTH) { - super.fill(instr); - } else { - MarinaUtils.expectLength(instr, MarinaPacket.WORD_WIDTH); - /* - MarinaUtils.expectLength(instr, INSTRUCTION_LENGTH); - BitVector pad = new BitVector(MarinaPacket.WORD_WIDTH-INSTRUCTION_LENGTH, "pad"); - pad.setFromLong(0); - */ - super.fill(new MarinaPacket(instr /*.cat(pad)*/, false)); - } - } - // FIXME: I really don't like this --Adam public BitVector drainNoCheck() { BitVector dta = super.drainNoCheck(); @@ -49,8 +35,8 @@ public class InstructionStopper extends ProperStopper { } /** put one Instruction into InstructionStopper */ - public void fill(Instruction instr) { - fill(MarinaUtils.berkToSun(MarinaTest.marinaFleet.encodeInstruction(MarinaTest.marinaFleet.getOnlyInputDock(), instr))); + public void fill(Instruction inst) { + super.fill(new MarinaPacket(inst)); } /* put a torpedo into the InstructionStopper */ diff --git a/testCode/com/sun/vlsi/chips/marina/test/MarinaPacket.java b/testCode/com/sun/vlsi/chips/marina/test/MarinaPacket.java index 217dc7e..04cc40c 100644 --- a/testCode/com/sun/vlsi/chips/marina/test/MarinaPacket.java +++ b/testCode/com/sun/vlsi/chips/marina/test/MarinaPacket.java @@ -5,6 +5,9 @@ import com.sun.async.test.ChainControl; import com.sun.async.test.ChipModel; import com.sun.async.test.JtagTester; import com.sun.async.test.NanosimModel; +import edu.berkeley.fleet.api.Dock; +import edu.berkeley.fleet.api.Instruction; +import edu.berkeley.fleet.marina.MarinaFleet; /** * This class encapsulates a "packet" -- a data item in flight plus @@ -22,6 +25,7 @@ public class MarinaPacket { public final BitVector data; public final boolean tokenhood; public final BitVector path; + private final boolean is_instruction; private static final BitVector null_path = new BitVector(PATH_WIDTH, "null_path"); static { @@ -34,6 +38,7 @@ public class MarinaPacket { this.data = new BitVector(WORD_WIDTH, "marina packet data"); this.path = new BitVector(PATH_WIDTH, "marina packet path"); this.tokenhood = !singleBitVector.get(0); + this.is_instruction = false; for(int i=0; i