From 74a475470c11a19a7b982860372cca73090d9c29 Mon Sep 17 00:00:00 2001 From: adam Date: Mon, 10 Nov 2008 07:15:51 +0100 Subject: [PATCH] replace addPreCrap() with noDriveLatches in FpgaDock.java --- src/edu/berkeley/fleet/fpga/FpgaDock.java | 4 ++-- src/edu/berkeley/fleet/fpga/verilog/Verilog.java | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/edu/berkeley/fleet/fpga/FpgaDock.java b/src/edu/berkeley/fleet/fpga/FpgaDock.java index a83073a..7de5618 100644 --- a/src/edu/berkeley/fleet/fpga/FpgaDock.java +++ b/src/edu/berkeley/fleet/fpga/FpgaDock.java @@ -143,8 +143,8 @@ public class FpgaDock extends FleetTwoDock implements FabricElement { Module.InstantiatedModule dfifo = new Module.InstantiatedModule(this, dfifo_m); fabric_in.hasLatch = false; - addPreCrap("assign "+dfifo.getInputPort("in").getName()+"_r = fabric_in_r;\n"); - addPreCrap("assign fabric_in_a = "+dfifo.getInputPort("in").getName()+"_a;\n"); + fabric_in.connect(dfifo.getInputPort("in")); + dfifo.getInputPort("in").noDriveLatches = true; if (inbox) addPreCrap("assign "+dfifo.getInputPort("in").getName()+ " = { "+fpga.PACKET_SIGNAL.verilogVal("fabric_in")+ diff --git a/src/edu/berkeley/fleet/fpga/verilog/Verilog.java b/src/edu/berkeley/fleet/fpga/verilog/Verilog.java index c9da7d3..9ffafdd 100644 --- a/src/edu/berkeley/fleet/fpga/verilog/Verilog.java +++ b/src/edu/berkeley/fleet/fpga/verilog/Verilog.java @@ -379,6 +379,7 @@ public class Verilog { public boolean forceNoLatch = false; public SinkPort driven = null; public Latch latchDriver = null; + public boolean noDriveLatches = false; public final String resetBehavior; public Assignable getAssignableBits(int high, int low) { return new SimpleValue(getVerilogName(), high, low); } public String getVerilogAction() { return getReq() + " <= 1;"; } @@ -444,7 +445,7 @@ public class Verilog { if (driver != null) { sb.append("assign " + name +"_r = " + driver.name + "_r;\n"); sb.append("assign " + driver.name +"_a = " + name + "_a;\n"); - if (width>0) + if (width>0 && !noDriveLatches) sb.append("assign " + name +" = " + driver.name + ";\n"); } if (latchDriver != null) { -- 1.7.10.4