Netlist (.net) in Electric VLSI

85 views
Skip to first unread message

Bárbaro Maykel López-Portilla Vigil

unread,
Oct 10, 2020, 2:40:36 PM10/10/20
to Electric VLSI Editor
Hi everyone:
I would like to ask you the following:
I have a netlist file generated in LTSpice (* .net) and I need to load it in Electric  VLSI . My idea is not to make the schematic circuit in Electric VLSI again. Do you know how it could be done?

Steven Rubin

unread,
Oct 10, 2020, 2:58:27 PM10/10/20
to electr...@googlegroups.com

Sorry, but this cannot be done easily. Spice netlists don't have any placement information. This means you would have to use Electric's placement tool, which would try to optimize things in a rectangular grid layout, probably not what you want. And it's not clear that Electric can read this netlist, although it does have other ways of importing netlists, so you might have to start by converting the LTSpice file, a lot of trouble.

It would be best to go to the original program that wrote the LTSpice netlist and see if it has some other interchange format that Electric could read.

   -Steven Rubin

--
You received this message because you are subscribed to the Google Groups "Electric VLSI Editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to electricvlsi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/electricvlsi/5d3c2853-4f13-4d82-b370-6fb40ec47c4bn%40googlegroups.com.

R. Jacob Baker

unread,
Oct 10, 2020, 3:01:25 PM10/10/20
to electr...@googlegroups.com
When they emailed directly I suggested the following. 

By putting the text for the netlist in spice code it should allow running it directly with LTspice but I haven't tried it.

----------------------------------------
--
Faculty do research to enhance their teaching in the lab and classroom.


Bárbaro Maykel López-Portilla Vigil

unread,
Oct 10, 2020, 4:00:50 PM10/10/20
to Electric VLSI Editor
Very thanks Mr. Steven Rubin for your help with the netlist file concepts.

Very thanks Dr. Jacob Baker for your proposal, it´s work fine.

rjacobbaker

unread,
Nov 22, 2020, 4:36:23 PM11/22/20
to Electric VLSI Editor
One of my students just sent me the following related to problems with a MATLAB script we use also not being able to read the output of the newer version of LTspice. This (newer version of LTspice represents characters with 2 bytes instead of 1) is likely the issue with Electric so if someone wants to use the newer version of LTspice with Electric the below might be useful (if you make the programming Java change). 

If there is ever a new version of Electric, that is v. 9.08, it would be good to get the LTspice code updated so that newer version of LTspice work with Electric. Again see: http://cmosedu.com/cmos1/ltspice/ltspice_electric.htm

Best wishes, Jake.

-------------------------------------------------------
Old versions of LTSpice apparently use one byte to represent characters. The old 'readLtsRaw.m' script would therefore use this code to read from the header:

header(linenum,charnum)= fread(fid, 1, '*uint8');

The result is that when the new versions of LTSpice use two characters (UTF16?) every second character is just reading a zero and the condition checks for end of line
and end of header fail. Changing the code to read two bytes fixes the issue. the corrected line is:

header(linenum,charnum)= fread(fid, 1, '*uint16');

Updated 11/22/2020

--
​Faculty do research to enhance their teaching in the lab and classroom.

Gavin

unread,
Nov 22, 2020, 5:39:14 PM11/22/20
to Electric VLSI Editor
I'm wondering if it is the amtRead values in getNextDouble() (8 -> 16) and getNextFloat() (4 -> 8) of  RawSpiceOut.java that would need similarly adjusted:


Unfortunately, at the moment I don't have one of the development environments set up as describe at


to try that out.

Steven Rubin

unread,
Nov 22, 2020, 7:59:39 PM11/22/20
to electr...@googlegroups.com

There may well be a 9.08 someday, and in the meantime, we are 4 minor releases past 9.07 (which means the current source repository is at 9.07d). Small changes are still being made by myself, and I encourage others to contribute. If anyone is able to tackle this bug, send the patch to me and I'll get it into the system.

   -Steven Rubin

Gavin

unread,
Nov 23, 2020, 12:42:05 AM11/23/20
to Electric VLSI Editor
Prof. Baker,

Thanks for informing of the existence of the 'readLtsRaw.m' Matlab script.  I currently don't have access to Matlab, but with a few modifications to 'readLtsRaw.m', it looks like it will work with Octave as shown in the attached "Plot LTSPICE XVII raw with Octave.pdf".  I may be able to use what I learned from this in the future to try to modify the Electric JAVA source.

Gavin

On Sunday, November 22, 2020 at 2:36:23 PM UTC-7 rjacobbaker wrote:
readLtsRawUtf16Octave.m
Plot LTSPICE XVII raw with Octave.pdf
plot_t_vin.m

R. Jacob Baker

unread,
Nov 23, 2020, 12:43:30 AM11/23/20
to electr...@googlegroups.com
Great, thank you, Jake.

--
You received this message because you are subscribed to the Google Groups "Electric VLSI Editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to electricvlsi...@googlegroups.com.

Gavin

unread,
Dec 21, 2020, 5:27:55 AM12/21/20
to Electric VLSI Editor
Developer(s) and Steve,

1. I'm looking at the Electric Eclipse usage instructions at:

Do you have steps that you can share on how you create the electric-9.08d.jar and electricBinary-9.08d.jar from the current trunk source code with Eclipse as I'm not seeing that in the instructions?

2. Can you test and incorporate the attached RawSpiceOut.java into the savannah repository for Electric, if you like how it works for plotting LTspice XVII raw data with Write Spice Deck, refer to the attached "Plot LTSPICE XVII raw with Electric.pdf"?

Thanks,

Gavin
RawSpiceOut.java
Plot LTSPICE XVII raw with Electric.pdf
Building Electric from Source Code with Eclipse.pdf

Gavin

unread,
Dec 22, 2020, 1:22:31 AM12/22/20
to Electric VLSI Editor
Steve,

Thanks for this improvement.

You're welcome. Though, there may be a small bug with it that I have been unable to determine the exact cause and solution for.  Sometimes it has crashed on stopProgressDialog() in the Stimuli processInput function of RawSpiceOut.java.  Sometimes a workaround is to run it multiple times until the Waveforms window comes up and restarting Eclipse sometimes may have helped.  I haven't tried making a jar file to see if there is a relation to use of the Eclipse IDE environment or not.

I'm not really happy that you have to place a dummy file somewhere to tell Electric what is going on. It should really be a preference. So I changed it.

Yeah, I was also thinking about a checkbox in "Spice/CDL" Preferences but due to my lack of experience with the Electric code base I wasn't sure how complex the programming for it would be.  So I went with the simple dummy file approach looking for advice, but thanks for implementing the checkbox.

New code is in the repository. Now, in the "Spice/CDL" Preferences, there is a checkbox "Use newer LTSpice XVII" which you must check to make your code active. No empty files are necessary.

Thanks for putting the new code in the repository, the new option in "Spice/CDL" looks nice:

New_Spice-CDL_window.png

Also, I have attached the Ant build file that assembles a working version of Electric with all the bells and whistles.

Thanks for sending the buildPublicWithExtras.xml file for Ant from the packaging folder [ http://svn.savannah.gnu.org/viewvc/electric/trunk/electric/packaging/ ].

I will read more about Ant in the Electric manual

https://www.staticfreesoft.com/jmanual/mchap01-04-03.html

https://www.staticfreesoft.com/jmanual/mchap01-04-02.html

and on the Internet.

Of note, in the "Building Electric from Source Code with Eclipse.pdf" previously sent, I have discovered that it is the installation of Scala IDE 4.7.x that currently breaks the "New launch configuration" in the Run Configuration.  So the "Add Scala IDE to Eclipse" section can be skipped.

Gavin

Reply all
Reply to author
Forward
0 new messages