// Setup //////////////////////////////////////////////////////////////////////////////
Ship createShip(String type) throws IOException {
- ShipDescription sd = new ShipDescription(type, new BufferedReader(new InputStreamReader(new FileInputStream("ships/"+type+".ship"))));
+ ShipDescription sd = new ShipDescription(this, type, new BufferedReader(new InputStreamReader(new FileInputStream("ships/"+type+".ship"))));
int count = 0;
for(Ship ship : ships.values()) if (ship.getType().equals(type)) count++;
String name = type+count;
createShip("CarrySaveAdder");
createShip("Rotator");
createShip("Lut3");
- createShip("Timer");
- createShip("DDR2");
- createShip("Dvi");
} else {
for(int i=0; i<2; i++) createShip("Memory");
- for(int i=0; i<3; i++) createShip("Alu");
- for(int i=0; i<2; i++) createShip("Fifo");
- for(int i=0; i<11; i++) createShip("Counter");
-
- /*
- for(int i=0; i<3; i++) createShip("Memory");
- for(int i=0; i<3; i++) createShip("Alu");
- for(int i=0; i<2; i++) createShip("Fifo");
- for(int i=0; i<14; i++) createShip("Counter");
-
- // "really big" configuration: 138 docks
- for(int i=0; i<4; i++) createShip("Alu");
- */
+ for(int i=0; i<6; i++) createShip("Alu");
+ //for(int i=0; i<2; i++) createShip("Fifo");
+ for(int i=0; i<12; i++) createShip("Counter");
+ //for(int i=0; i<2; i++) createShip("Null");
//createShip("CarrySaveAdder");
//createShip("Rotator");
- //createShip("Lut3");
+ createShip("Random");
+ createShip("Button");
- createShip("Timer");
- createShip("DDR2");
- createShip("Dvi");
}
+ createShip("Timer");
+ createShip("DDR2");
+ createShip("Dvi");
+
// for FifoShip
new Module.InstantiatedModule(top, new FifoModule(8, WIDTH_WORD));
final Module.SourcePort sp = sp0;
sources.add(new FabricElement.AbstractFabricElement() {
private FabricElement upstream;
+ public int getPathLength(FpgaDestination dest) { return upstream.getPathLength(dest); }
public FpgaPath getPath(FpgaDestination dest, BitVector signal) { return upstream.getPath(dest, signal); }
public void addOutput(FabricElement out, Module.Port outPort) {
this.upstream = out;