add verilog/spice generation to marina.bsh
authorAdam Megacz <adam.megacz@sun.com>
Thu, 28 May 2009 05:21:09 +0000 (05:21 +0000)
committerAdam Megacz <adam.megacz@sun.com>
Thu, 28 May 2009 05:21:09 +0000 (05:21 +0000)
testCode/marina-gen.bsh [new file with mode: 0644]
testCode/marina.bsh

diff --git a/testCode/marina-gen.bsh b/testCode/marina-gen.bsh
new file mode 100644 (file)
index 0000000..5c9f6d8
--- /dev/null
@@ -0,0 +1,25 @@
+import com.sun.electric.tool.user.menus.FileMenu;
+import com.sun.electric.tool.user.menus.FileMenu.ReadLibrary;
+import com.sun.electric.tool.simulation.Simulation;
+import com.sun.electric.tool.io.output.Output;
+import com.sun.electric.tool.io.FileType;
+import com.sun.electric.database.hierarchy.EDatabase;
+import com.sun.electric.database.text.TextUtils;
+import com.sun.electric.tool.Job;
+import java.lang.Thread;
+import java.net.URL;
+import com.sun.electric.database.variable.EvalJavaBsh;
+
+//FileMenu.openLibraryCommand(new URL("file:../electric/aMarinaM.jelib"));
+
+URL file = new URL("file:../electric/aMarinaM.jelib");
+String fileName = file.getFile();
+ReadLibrary job =
+   new ReadLibrary(file,
+                   FileMenu.getLibraryFormat(fileName, null),
+                   TextUtils.getFilePath(file),
+                   null, null, null);
+
+
+EvalJavaBsh.runScriptJob("marina.bsh").startJob();
+
index 32db4c7..504c77c 100644 (file)
@@ -5,7 +5,30 @@ import com.sun.electric.plugins.menus.ScanChainXML;
 /*
  * Create a ScanChainXML object
  */
-  
+
+import com.sun.electric.tool.user.menus.FileMenu;
+import com.sun.electric.tool.user.menus.FileMenu.ReadLibrary;
+import com.sun.electric.tool.simulation.Simulation;
+import com.sun.electric.tool.io.output.Output;
+import com.sun.electric.tool.io.FileType;
+import com.sun.electric.database.hierarchy.EDatabase;
+import com.sun.electric.database.text.TextUtils;
+import com.sun.electric.tool.Job;
+import java.lang.Thread;
+import java.net.URL;
+import com.sun.electric.database.variable.EvalJavaBsh;
+import com.sun.electric.database.hierarchy.View;
+
+Simulation.setVerilogStopAtStandardCells(false);
+for (Library lib : EDatabase.clientDatabase().getLibraries()) {
+  for (Cell c : lib.getCells()) {
+    if (c.getName().equals("marinaOutDock") && c.getView()==View.SCHEMATIC) {
+      Output.exportCellCommand(c, null, "marina.v", FileType.VERILOG, null);
+      Output.exportCellCommand(c, null, "marina.schematic-parasitics.spi", FileType.SPICE, null);
+    }
+  }
+}
+
   ScanChainXML gen = new ScanChainXML();
 
   // Add all the scan chain elements: name, access, clears, 
@@ -46,3 +69,4 @@ import com.sun.electric.plugins.menus.ScanChainXML;
    gen.startFromExport("sic[1]", "marina_control");
    gen.startFromExport("sid[1]", "marina_data");
    gen.start("aMarinaM","marinaOutDock{sch}");
+