projects
/
fleet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c1ef4fb
)
bugfix in FpgaDock: treat ignore-olc instructions properly
author
adam
<adam@megacz.com>
Thu, 28 Aug 2008 09:55:21 +0000
(10:55 +0100)
committer
adam
<adam@megacz.com>
Thu, 28 Aug 2008 09:55:21 +0000
(10:55 +0100)
src/edu/berkeley/fleet/fpga/FpgaDock.java
patch
|
blob
|
history
diff --git
a/src/edu/berkeley/fleet/fpga/FpgaDock.java
b/src/edu/berkeley/fleet/fpga/FpgaDock.java
index
8a53829
..
5315f78
100644
(file)
--- a/
src/edu/berkeley/fleet/fpga/FpgaDock.java
+++ b/
src/edu/berkeley/fleet/fpga/FpgaDock.java
@@
-176,38
+176,24
@@
public class FpgaDock extends FleetTwoDock implements FabricElement {
new Event(new Object[] { instruction,
PACKET_TOKEN.verilogVal("instruction"),
ififo_out,
new Event(new Object[] { instruction,
PACKET_TOKEN.verilogVal("instruction"),
ififo_out,
- token_out,
- I.verilog("ondeck"),
- },
+ I.verilog("ondeck") },
new Action[] { instruction,
ififo_out,
new AssignAction(loop_counter, "0"),
new AssignAction(repeat_counter, "1"),
new Action[] { instruction,
ififo_out,
new AssignAction(loop_counter, "0"),
new AssignAction(repeat_counter, "1"),
- isHatchOpen.doFill(),
- });
+ isHatchOpen.doFill() });
// Non-Torpedo Arrival
// Non-Torpedo Arrival
- new Event(new Object[] { instruction,
- efifo_in,
- "!("+PACKET_TOKEN.verilogVal("instruction")+")"
- },
- new Action[] {
- efifo_in,
- });
+ new Event(new Object[] { instruction, efifo_in, "!("+PACKET_TOKEN.verilogVal("instruction")+")" },
+ new Action[] { efifo_in });
new Event(new Object[] { efifo_in.getName()+"_a" },
new Action[] { new SimpleAction(instruction.getName()+"_a <= 1;") });
// Tail
new Event(new Object[] { efifo_in.getName()+"_a" },
new Action[] { new SimpleAction(instruction.getName()+"_a <= 1;") });
// Tail
- new Event(new Object[] { efifo_out, TAIL.verilog(efifo_out.getName()) },
- new Action[] { efifo_out, isHatchOpen.doDrain() } );
+ new Event(new Object[] { efifo_out, ififo_in, isHatchOpen.isFull(), TAIL.verilog(efifo_out.getName()) },
+ new Action[] { efifo_out, isHatchOpen.doDrain() } );
// Enqueue
// Enqueue
- new Event(new Object[] { efifo_out,
- ififo_in,
- "!("+TAIL.verilog(efifo_out.getName())+")",
- isHatchOpen.isFull() },
- new Action[] { efifo_out,
- ififo_in,
- }
- );
+ new Event(new Object[] { efifo_out, ififo_in, isHatchOpen.isFull(), "!("+TAIL.verilog(efifo_out.getName())+")" },
+ new Action[] { efifo_out, ififo_in } );
// Execute
new Event(new Object[] { ififo_out, ififo_in, proceed.isFull() },
// Execute
new Event(new Object[] { ififo_out, ififo_in, proceed.isFull() },
@@
-322,7
+308,11
@@
public class FpgaDock extends FleetTwoDock implements FabricElement {
"("+
"!`instruction_is_normal(i) || repeat_counter!=0"+
") && ("+
"("+
"!`instruction_is_normal(i) || repeat_counter!=0"+
") && ("+
+ "("+
+ P_ALWAYS.verilog("i")+
+ ") || ("+
P_OLC_ZERO.verilog("i")+"==(loop_counter==0)"+
P_OLC_ZERO.verilog("i")+"==(loop_counter==0)"+
+ ")"+
") && ("+
" " + P_A.verilog("i")+" ? flag_a"+
":" + P_B.verilog("i")+" ? flag_b"+
") && ("+
" " + P_A.verilog("i")+" ? flag_a"+
":" + P_B.verilog("i")+" ? flag_b"+