From: Adam Megacz Date: Tue, 24 Mar 2009 17:58:50 +0000 (+0000) Subject: break out Station and CmdArgs into outer classes X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=2b26da0199ccf810a9412910707e3b158046c433;p=fleet.git break out Station and CmdArgs into outer classes --- diff --git a/testCode/com/sun/vlsi/chips/marina/test/CmdArgs.java b/testCode/com/sun/vlsi/chips/marina/test/CmdArgs.java new file mode 100644 index 0000000..4e6bb26 --- /dev/null +++ b/testCode/com/sun/vlsi/chips/marina/test/CmdArgs.java @@ -0,0 +1,85 @@ +package com.sun.vlsi.chips.marina.test; +import com.sun.async.test.BitVector; +import com.sun.async.test.Infrastructure; + +import java.util.List; +import java.util.Random; +import java.util.ArrayList; + +public class CmdArgs { + public enum Mode { + //ISOLATED_IN_DOCK, + //ISOLATED_OUT_DOCK, + WHOLE_CHIP_SCHEMATIC_PARASITICS, + WHOLE_CHIP_LAYOUT_PARASITICS, + TEST_SILICON + }; + public Mode mode = Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS; + public int testNum, ringNum, numTokensOther, chipNum=-1; + public boolean jtagShift = false; + public Station station=Station.ONE; + public float vdd, temp; + public boolean init; + + public boolean wholeChipNetlist() {return mode==Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS || + mode==Mode.WHOLE_CHIP_LAYOUT_PARASITICS || + mode==Mode.TEST_SILICON;} + private static void usage() { + System.out.println("Options: -testNum select which test to run"); + System.out.println(" -vdd "); + System.out.println(" -temp "); + System.out.println(" -chipSch simulate netlist of entire chip, parasitics from schematic"); + System.out.println(" -chipLay simulate netlist of entire chip, parasitics from layout"); + System.out.println(" -jtagShift simulate shifting of JTAG chains"); + System.out.println(" -silicon test the silicon"); + System.out.println(" -chipNum store test results according to chip number"); + System.out.println(" -station select test station"); + System.exit(-1); + } + + public CmdArgs(String[] args) { + int nbArgs = args.length; + for (int i=0; i=nbArgs) usage(); + testNum = Integer.parseInt(args[i]); + } else if (args[i].equals("-vdd")) { + i++; + if (i>=nbArgs) usage(); + vdd = Float.parseFloat(args[i]); + } else if (args[i].equals("-init")) { + i++; + if (i>=nbArgs) usage(); + init = Boolean.parseBoolean(args[i]); + } else if (args[i].equals("-temp")) { + i++; + if (i>=nbArgs) usage(); + temp = Float.parseFloat(args[i]); + } else if (args[i].equals("-chipNum")) { + i++; + if (i>=nbArgs) usage(); + chipNum = Integer.parseInt(args[i]); + } else if (args[i].equals("-station")) { + i++; + if (i>=nbArgs) usage(); + switch (Integer.parseInt(args[i])) { + case 1: station = Station.ONE; break; + case 2: station = Station.TWO; break; + default: System.out.println("Bad station: "+args[i]); usage(); + } + } else if (args[i].equals("-chipSch")) { + mode = CmdArgs.Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS; + } else if (args[i].equals("-chipLay")) { + mode = CmdArgs.Mode.WHOLE_CHIP_LAYOUT_PARASITICS; + } else if (args[i].equals("-silicon")) { + mode = CmdArgs.Mode.TEST_SILICON; + } else if (args[i].equals("-jtagShift")) { + jtagShift = true; + } else { + System.out.println("Bad argument: "+args[i]); + usage(); + } + } + } +} diff --git a/testCode/com/sun/vlsi/chips/marina/test/MarinaTest.java b/testCode/com/sun/vlsi/chips/marina/test/MarinaTest.java index 097a2ea..d5c6e0e 100644 --- a/testCode/com/sun/vlsi/chips/marina/test/MarinaTest.java +++ b/testCode/com/sun/vlsi/chips/marina/test/MarinaTest.java @@ -21,9 +21,8 @@ import com.sun.async.test.SiliconChip; import com.sun.async.test.SimulationModel; import com.sun.async.test.VoltageReadable; import com.sun.vlsi.chips.marina.test.Marina.Ilc; -import com.sun.vlsi.chips.marina.test.MarinaUtils.CmdArgs; -import com.sun.vlsi.chips.marina.test.MarinaUtils.Station; -import com.sun.vlsi.chips.marina.test.MarinaUtils.CmdArgs.Mode; +import com.sun.vlsi.chips.marina.test.CmdArgs; +import com.sun.vlsi.chips.marina.test.CmdArgs.Mode; import edu.berkeley.fleet.api.Dock; import edu.berkeley.fleet.api.Instruction; @@ -199,7 +198,7 @@ public class MarinaTest { } private MarinaTest(String[] args) { - cmdArgs = new MarinaUtils.CmdArgs(args); + cmdArgs = new CmdArgs(args); reportTask(cmdArgs); if (cmdArgs.mode==Mode.TEST_SILICON) doSilicon(); else doSim(); } diff --git a/testCode/com/sun/vlsi/chips/marina/test/MarinaUtils.java b/testCode/com/sun/vlsi/chips/marina/test/MarinaUtils.java index 6de097d..5e59fcd 100644 --- a/testCode/com/sun/vlsi/chips/marina/test/MarinaUtils.java +++ b/testCode/com/sun/vlsi/chips/marina/test/MarinaUtils.java @@ -40,100 +40,7 @@ public class MarinaUtils { * or whether high means EMPTY */ public static enum StateWireState {FULL, EMPTY}; - public static class CmdArgs { - public enum Mode { - //ISOLATED_IN_DOCK, - //ISOLATED_OUT_DOCK, - WHOLE_CHIP_SCHEMATIC_PARASITICS, - WHOLE_CHIP_LAYOUT_PARASITICS, - TEST_SILICON - }; - public Mode mode = Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS; - public int testNum, ringNum, numTokensOther, chipNum=-1; - public boolean jtagShift = false; - public Station station=Station.ONE; - public float vdd, temp; - public boolean init; - - public boolean wholeChipNetlist() {return mode==Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS || - mode==Mode.WHOLE_CHIP_LAYOUT_PARASITICS || - mode==Mode.TEST_SILICON;} - private static void usage() { - System.out.println("Options: -testNum select which test to run"); - System.out.println(" -vdd "); - System.out.println(" -temp "); - System.out.println(" -chipSch simulate netlist of entire chip, parasitics from schematic"); - System.out.println(" -chipLay simulate netlist of entire chip, parasitics from layout"); - System.out.println(" -jtagShift simulate shifting of JTAG chains"); - System.out.println(" -silicon test the silicon"); - System.out.println(" -chipNum store test results according to chip number"); - System.out.println(" -station select test station"); - System.exit(-1); - } - - public CmdArgs(String[] args) { - int nbArgs = args.length; - for (int i=0; i=nbArgs) usage(); - testNum = Integer.parseInt(args[i]); - } else if (args[i].equals("-vdd")) { - i++; - if (i>=nbArgs) usage(); - vdd = Float.parseFloat(args[i]); - } else if (args[i].equals("-init")) { - i++; - if (i>=nbArgs) usage(); - init = Boolean.parseBoolean(args[i]); - } else if (args[i].equals("-temp")) { - i++; - if (i>=nbArgs) usage(); - temp = Float.parseFloat(args[i]); - } else if (args[i].equals("-chipNum")) { - i++; - if (i>=nbArgs) usage(); - chipNum = Integer.parseInt(args[i]); - } else if (args[i].equals("-station")) { - i++; - if (i>=nbArgs) usage(); - switch (Integer.parseInt(args[i])) { - case 1: station = Station.ONE; break; - case 2: station = Station.TWO; break; - default: System.out.println("Bad station: "+args[i]); usage(); - } - } else if (args[i].equals("-chipSch")) { - mode = CmdArgs.Mode.WHOLE_CHIP_SCHEMATIC_PARASITICS; - } else if (args[i].equals("-chipLay")) { - mode = CmdArgs.Mode.WHOLE_CHIP_LAYOUT_PARASITICS; - } else if (args[i].equals("-silicon")) { - mode = CmdArgs.Mode.TEST_SILICON; - } else if (args[i].equals("-jtagShift")) { - jtagShift = true; - } else { - System.out.println("Bad argument: "+args[i]); - usage(); - } - } - } - } - public static enum Station { - ONE("152.70.25.42", 1, "H34401C", "H34401A", 24.98e-3), - TWO("152.70.25.27", 2, "H34401B", "H34401D", 26.47e-3); - public final String ipAddr, coreVoltmeter, currentVoltmenter; - public final int jtagChannel; - public final double ammeterShuntResistance; - private Station(String ip, int jtagChannel, String coreVoltmeter, - String currentVoltmeter, double ammeterShuntResistance) { - this.ipAddr = ip; - this.jtagChannel = jtagChannel; - this.coreVoltmeter = coreVoltmeter; - this.currentVoltmenter = currentVoltmeter; - this.ammeterShuntResistance = ammeterShuntResistance; - } - }; - public static void fatal(boolean pred, String msg) { if (pred) Infrastructure.fatal(msg); } diff --git a/testCode/com/sun/vlsi/chips/marina/test/Station.java b/testCode/com/sun/vlsi/chips/marina/test/Station.java new file mode 100644 index 0000000..5f9ed62 --- /dev/null +++ b/testCode/com/sun/vlsi/chips/marina/test/Station.java @@ -0,0 +1,23 @@ +package com.sun.vlsi.chips.marina.test; +import com.sun.async.test.BitVector; +import com.sun.async.test.Infrastructure; + +import java.util.List; +import java.util.Random; +import java.util.ArrayList; + +public enum Station { + ONE("152.70.25.42", 1, "H34401C", "H34401A", 24.98e-3), + TWO("152.70.25.27", 2, "H34401B", "H34401D", 26.47e-3); + public final String ipAddr, coreVoltmeter, currentVoltmenter; + public final int jtagChannel; + public final double ammeterShuntResistance; + private Station(String ip, int jtagChannel, String coreVoltmeter, + String currentVoltmeter, double ammeterShuntResistance) { + this.ipAddr = ip; + this.jtagChannel = jtagChannel; + this.coreVoltmeter = coreVoltmeter; + this.currentVoltmenter = currentVoltmeter; + this.ammeterShuntResistance = ammeterShuntResistance; + } +};