Support Forum

Using NGSpice ngspice34_64



Wednesday 24th March 2021
I want to use NGSpice as Simulator. But everytime I get the text : * ngspice was not found on your system! OS : Windows NGSpice Folder : at same as LayoutEditor - C:\Program Files (x86) Manipulate macros : C:\Program Files (x86)\LayoutEditor\macros\schematic-macros\Utilities\NGSpice Added line : if (!b) b=process::externalTool("ngspice34_64/Spice64/bin","ngspice",sl,"callbackDir+ngspice-sim1.layout"); I tried this after adjusting the folder permissions, moving the folder, LayoutEditor and restarting the system several times. Could this page http://www.layouteditor.net/wiki/ngspice be more precise? With an example? Or a comment line inside the macros? I think this would help a lot.
Jürgen
LayoutEditorFull
Thursday 25th March 2021
Did you install NGspice on your system? Where it is located. With the macro command: ```process::externalTool("ngspice34_64/Spice64/bin","ngspice",sl,"callbackDir+ngspice-sim1.layout");``` on Windows a *ngspice.exe* is searched in the folder *C:\Program Files (x86)\ngspice34_64\Spice64\bin* and *C:\Program Files\ngspice34_64\Spice64\bin* as well in some folder listed in your path environment. Is your ngspace.exe stored there?


Thursday 25th March 2021
Attachments:
(only for registered users)

Folder.PNG

I've downloaded NGSpice and extracted it to the "Programs (x86)" directory (As shown in the appendix.). Should this be done before installing LayoutEditor? I've found the prob. I had copied the line and failed to notice that this time there is a '-' sign integrated compared to the old directory: *...ngspice23110605-2...* vs *...ngspice-34_64...* It's now working. Thanks a lot!


Saturday 27th March 2021

Jürgen
LayoutEditorFull
Saturday 27th March 2021
It is not important which software is installed first. Any time Ngspice is called, it is search on the system.


Sunday 28th March 2021
Currently I am trying to implement a circuit so that I can simulate it. I have used the components from the analogLib. As mentioned before NGSpice starts as expected. Unfortunately the netlist is mostly empty. I suspect that I have to tell the components the models. Unfortunately this isn't directly apparent how I can adjust these. Partly I can only adjust the component name (e.g. NMOS). In addition, I would like to specify the folder of the spice library to be used. Is there a possibility here? Similar to LTSpice with the spice syntax this is possible. Unfortunately the text elements are not taken over into the spice file. Thanks


Tuesday 30th March 2021
Hi, I think i've solved or have made a small step forward. I have adjusted the netlist generation. This also makes a lot of sense. My current netlist looks like this: ```spice *ngspice $filename generated by the LayoutEditor (www.LayoutEditor.com) .options filetype=ascii .save all .dc V1 0 9 1.5 .print dc v(1,0) $groundnode(0) *start of netlist $netlist(spice) *NGspice specific part $netlist(ngspice) *end of netlist *required models $model(spice) .lib "C:\skywater-pdk-libs-sky130_fd_pr\skywater-pdk-libs-sky130_fd_pr\models\sky130.lib.spice" tt ``` I try (as long as I do not have access to myXFAB ) to use the primary models of Sky130. Currently I use the analogLib in the Schematic input. But I can't link the models to the components to have them assigned in the netlist. Is it possible to use different symbol libraries so that, for example, the components can be customized? Is there a example for usingand linking a model? Thanks
Jürgen
LayoutEditorFull
Tuesday 30th March 2021
You have adjusted the spice netllist setup of the LayoutEditor and added a line to the used spice models. That is fine to do so. Even as there other ways to do it. The analog library does not contain spice netlist information as far as i know. You can adjust symbols and components as you like. There are no limitation in editing. To review and have a template I recommend to have a look to the shipped openCellLibrary. These component demonstrate most things possible with the LayoutEditor. Just copy the part you need to your own library. The sky130 primary library as it is openSource is still incomplete and thing are still missing.