Newbie question: Sub-interpreters for CAD program

David MacQuigg dmqatpobox.com
Sat Aug 27 04:21:36 EDT 2005


On 24 Aug 2005 13:48:13 -0700, "sonicSpammersGoToHellSmooth"
<sonicsmooth at gmail.com> wrote:

>Hi all,
>
>I'm a newbie to Python, so I have a question about writing an
>application that also has a scripting ability.  I'm thinking of Eric3
>as an example.  It's written in Python, but it also has an interpreter
>window.  The user doesn't have access (I don't think...) to all the
>internal stuff that makes the IDE work.
>
>In my case I'd like to write a CAD program which allows the user to
>write Python scripts, and to provide an API to do CAD stuff, manipulate
>parameters, circuits, layouts, simulations, etc.  The user should not
>have access to the internals of the CAD program itself.  The CAD
>program is written primarily in Python, with possibly C++ extensions
>for speed critical stuff.
>
>There is another posting currently asking about how many interpreters
>are needed with how many thread states each.  Since this is new to me,
>can someone please explain how this sort of thing is "supposed" to
>work, from a high level?
>
>I have a strong EE and hardware background (hence my need to write a
>CAD program that doesn't piss me off), but not a CS background.

Sounds like we have similar backgrounds and motivations.  I have a
project started along these lines, but I haven't had time to work on
it for the last few months.
http://www.ece.arizona.edu/~edatools/
  Project page
    EDA Tools Projects:
An Open-Source Platform for Front-End IC Design       cdp_tut01-a1.zip
cdp_tut01-a1.tar.gz  
The goal of this project is an easily-learned, universal, open-source,
circuit design platform that will allow IC designers to use whatever
tools they want for design entry, simulation, and display of results.
The platform should provide a simple GUI, basic services such as
storage of tool setups, and should define a simple, standard interface
for each class of tool.  Most of the work will be in documenting the
design and construction of the platform, using a simple scripting
language ( Python ) and GUI toolkit ( Qt ) so that others may easily
follow the pattern and extend the platform to support new and more
varied tools.
------

Take a look also at the MyHDL link from the main page.  This is a
similar effort for digital design.  Mine is mostly analog.

The discouraging thing about the EDA tools situation is that no matter
how loudly design engineers complain about the poor quality of the
proprietary tools they are using, there is very little interest in
participating in an open-source project.  They just can't see how it
would ever do what their expensive tools do now.

There is a similar lack of interest in the academic community.  None
of this is likely to lead to publications in scholarly journals.

--
Dave



More information about the Python-list mailing list