skill compiler

J

Jimka

Guest
hi, is anyone interested in having access to a SKILL compiler which
will compile SKILL code to the speed of a compiled C program?
Do you think such a compiler would be useful?

-jim
 
On 7 Mar 2006 14:16:33 -0800, "Jimka" <jimka@rdrop.com> wrote:

hi, is anyone interested in having access to a SKILL compiler which
will compile SKILL code to the speed of a compiled C program?
Do you think such a compiler would be useful?

-jim
It is an interesting idea, but I have one question. How do you intend to
load the object code into the layout tool?
 
how to load the code? you would load the SKILL and have it compile
automatically in virtual memory. The same way that SKILL currently
compiles into a virtual machine when loading the .il, it would compile
directly to x86 or sparc (etc) when you load the SKILL file.

does it sound interesting?
 
On 8 Mar 2006 13:06:45 -0800, "Jimka" <jimka@rdrop.com> wrote:

how to load the code? you would load the SKILL and have it compile
automatically in virtual memory. The same way that SKILL currently
compiles into a virtual machine when loading the .il, it would compile
directly to x86 or sparc (etc) when you load the SKILL file.

does it sound interesting?
It certainly sounds interesting. It sounds much like one of the projects
proposed several years ago by the SKILL group. Do you work at Cadence so
you can link the compiler code into the DFII binaries and have write
access to the virtual address space of the program? If you don't, I have
to ask the same question I asked before. How will you get the machine
code, your compiler or the compiled SKILL, into the DFII address space?
 
The compiler will not be an external program but part of dfII. There
is no issue with getting the code into the dfII address space.
It will read SKILL code and produce machine instructions and execute
them. Have you seen how lisp compilers work? There are many possible
implementations, but a popular one is they compile functions directly
into VM where they can simply be executed as any other part of the
program. A major advantage is that you cannot just exec any
instructions, but only ones that the SKILL compiler compiles for you.
That way dfII can guarantee that no illegal instructions are executed
and no segmentation violations are made etc.... This cannot be
guaranteed
if you are compiling C++ programs and linking them in.
 
Jimka,

This is an interesting idea. Were you planning to aim it at pcell
users? A C++ implementation of a Skill pcell would be interesting with
OpenAccess coming...it might allow the pcell to run on other OpenAccess
tools...Maybe Cadence wouldn't want that.
 
A C++ implementation of a SKILL pcell?
Why would anyone want to write a pcell in C++ if SKILL were
equally as fast and was not likely to have a segmentation fault?
SKILL compiled files could also optionally be saved to fasl files
for fast loading, if you did not want to go thru the compiler every
time you loaded.
 
Jimka wrote:

A C++ implementation of a SKILL pcell?
Why would anyone want to write a pcell in C++ if SKILL were
equally as fast and was not likely to have a segmentation fault?
If they happen to know C++ better than SKILL it would make sense, I think.
--
Svenn
 
If you want to develop a SKILL pcell, you can load the
file into a running icfb, and test your pcell, and change the
code and reload. If you wanted to do this with C++ you'd need
to recompile, link, restart icfb, test your pcell, then
start this look over again. it is a tremendously long debug loop.
I really cannot see why anyone would perfer it.
 
Can anybody tell me where to find that dbAccess executable.
It seems not to be installed within our Allegro 15.7 Installation.
Do we need to install a specific package ?

thx

Patrick

Bernd Fischer <bernd.fisc...@nsc.NOSPAM> writes:

SKILL is an interpreted progamming language, like Perl or Tcl,and needs
an interpreter which is the Cadence Design Framework IICommand
Interpreter Window (CIW).

There is a standalone interpreter named skill. Obviously you don't have
all the dfII functions in it.

Yours,
And there's another useful executable called "dbAccess" which gives you
core
SKILL plus db, dd, tech, cdf functions (i..e anything that is "pcell
safe").

Note that SKILL is actually byte-code compiled - so it's not strictly
interpreted or compiled. It compiles the code to a virtual machine, and
then
executes instructions in this virtual machine. So it's somewhere between an
interpreter and a compiler (the virtual machine is effectively an
interpreter).

Regards,

Andrew.
--
Erstellt mit Operas revolutionärem E-Mail-Modul: http://www.opera.com/mail/
 
Patrick,

It's only in the IC installation. It's to access IC databases, so wouldn't make
sense in an Allegro installation.

Regards,

Andrew.

On Wed, 13 Jun 2007 08:42:44 -0000, Patrick <Patrick.Escher@_nospam.gmail.com>
wrote:

Can anybody tell me where to find that dbAccess executable.
It seems not to be installed within our Allegro 15.7 Installation.
Do we need to install a specific package ?

thx

Patrick

Bernd Fischer <bernd.fisc...@nsc.NOSPAM> writes:

SKILL is an interpreted progamming language, like Perl or Tcl,and needs
an interpreter which is the Cadence Design Framework IICommand
Interpreter Window (CIW).

There is a standalone interpreter named skill. Obviously you don't have
all the dfII functions in it.

Yours,

And there's another useful executable called "dbAccess" which gives you
core
SKILL plus db, dd, tech, cdf functions (i..e anything that is "pcell
safe").

Note that SKILL is actually byte-code compiled - so it's not strictly
interpreted or compiled. It compiles the code to a virtual machine, and
then
executes instructions in this virtual machine. So it's somewhere between an
interpreter and a compiler (the virtual machine is effectively an
interpreter).

Regards,

Andrew.
--
Andrew Beckett
Principal European Technology Leader
Cadence Design Systems, UK.
 

Welcome to EDABoard.com

Sponsor

Back
Top