I'm using Electric 8.09 on Mac OS X 10.5.8 running Java: java version "1.5.0_20" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_20- b02-315) Java HotSpot(TM) Client VM (build 1.5.0_20-141, mixed mode, sharing)
I tried running the Pad Frame Generator on a top-level schematic/icon. I supplied the I/O pad library and the pad arrangement file. The contents are pasted below. I click on Tools -> Generation -> Pad Frame Generator. After selecting the .arr file, I click OK. I end up getting a Java Null Pointer Exception and am unable to generate the pad frame schematic . The log is shown below. =================================9================================= Checking schematic cell 'and2_4x{sch}' No errors found Checking schematic cell 'inv4x{sch}' No errors found Checking schematic cell 'buf_4x{sch}' No errors found Checking schematic cell 'colmux{sch}' No errors found Checking schematic cell 'colmux6{sch}' No errors found Checking schematic cell 'ctl{sch}' No errors found Checking schematic cell 'dec3_8{sch}' No errors found Checking schematic cell 'dec4_16{sch}' No errors found Checking schematic cell 'dff_r_n{sch}' No errors found Checking schematic cell 'dff_r_p{sch}' No errors found Checking schematic cell 'inv{sch}' No errors found Checking schematic cell 'precharge{sch}' No errors found Checking schematic cell 'precharge12{sch}' No errors found Checking schematic cell 'sram{sch}' No errors found Checking schematic cell 'sram16x6{sch}' No errors found Checking schematic cell 'writedriver{sch}' No errors found Checking schematic cell 'writedriver6{sch}' No errors found Checking schematic cell 'regfile{sch}' No errors found 0 errors and 0 warnings found (took 0.09 secs) =================================10================================= Library /Users/pgupta/tmp/iopads-ami05.jelib read, took 0.094 seconds AUTO ROUTING added: 86 wire arcs java.lang.NullPointerException at com.sun.electric.database.topology.ArcInst.newInstanceBase (ArcInst.java:305) at com.sun.electric.database.topology.ArcInst.newInstanceBase (ArcInst.java:242) at com.sun.electric.tool.generator.PadGenerator.createPadFrame (PadGenerator.java:1016) at com.sun.electric.tool.generator.PadGenerator.createPadFrames (PadGenerator.java:672) at com.sun.electric.tool.generator.PadGenerator.makePadFrame (PadGenerator.java:297) at com.sun.electric.tool.generator.PadGenerator.makePadFrameUseJob (PadGenerator.java:105) at com.sun.electric.tool.generator.PadGenerator$MakePadFrame.doIt (PadGenerator.java:126) at com.sun.electric.tool.EThread.run(EThread.java:94) My pad arrangement file: ; specify the cell library with the pads celllibrary iopads-ami05.jelib ; create a top-level cell containing the padframe and core cell chip ; create the schematic view views sch ; place this cell as the "core" core regfile ; set the alignment of the pads (specifying input and output port names) align pad_corner dvdd-1 dvdd align pad_in dvdd-1 dvdd align pad_out dvdd-1 dvdd align pad_analog dvdd-1 dvdd align pad_dvdd dvdd-1 dvdd align pad_dgnd dvdd-1 dvdd ;; replace the pad_in (inputs) and pad_out (outputs) statements with the pad ;; frame arrangement you want. keep at least two pad_dvdd and pad_dgnd pads ;; somewhere on the chip to supply power and ground to the pads and core ; place the top edge of pads place pad_corner place pad_in din=wen export pad=wen place pad_in din=resetb export pad=resetb place pad_in din=clk export pad=clk place pad_in din=dC[0] export pad=dC0 place pad_in din=dC[1] export pad=dC1 place pad_in din=dC[2] export pad=dC2 place pad_in din=dC[3] export pad=dC3 place pad_in din=dC[4] export pad=dC4 place pad_in din=dC[5] export pad=dC5 place pad_dvdd ; place the left edge of pads rotate cc place pad_corner place pad_in din=A[0] export pad=addrA0 place pad_in din=A[1] export pad=addrA1 place pad_in din=A[2] export pad=addrA2 place pad_in din=A[3] export pad=addrA3 place pad_in din=B[0] export pad=addrB0 place pad_in din=B[1] export pad=addrB1 place pad_in din=B[2] export pad=addrB2 place pad_in din=B[3] export pad=addrB3 place pad_dgnd place pad_dvdd ; place the bottom edge of pads rotate cc place pad_corner place pad_in din=C[0] export pad=addrC0 place pad_in din=C[1] export pad=addrC1 place pad_in din=C[2] export pad=addrC2 place pad_in din=C[3] export pad=addrC3 place pad_out din=dA[0] export pad=dA0 place pad_out din=dA[1] export pad=dA1 place pad_out din=dA[2] export pad=dA2 place pad_out din=dA[3] export pad=dA3 place pad_out din=dA[4] export pad=dA4 place pad_out din=dA[5] export pad=dA5 ; place the right edge of pads rotate cc place pad_corner place pad_out din=dB[0] export pad=dB0 place pad_out din=dB[1] export pad=dB1 place pad_out din=dB[2] export pad=dB2 place pad_out din=dB[3] export pad=dB3 place pad_out din=dB[4] export pad=dB4 place pad_out din=dB[5] export pad=dB5 place pad_dgnd export pad=GND place pad_dvdd export pad=VDD place pad_dgnd place pad_dvdd -- You received this message because you are subscribed to the Google Groups "Electric VLSI Editor" group. To post to this group, send email to electricv...@googlegroups.com. To unsubscribe from this group, send email to electricvlsi+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/electricvlsi?hl=.