skill compiler

Discussion in 'Cadence' started by Jimka, Mar 7, 2006.

  1. Jimka

    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
     
    Jimka, Mar 7, 2006
    #1
  2. It is an interesting idea, but I have one question. How do you intend to
    load the object code into the layout tool?
     
    Edward Kalenda, Mar 8, 2006
    #2
  3. Jimka

    Jimka Guest

    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?
     
    Jimka, Mar 8, 2006
    #3
  4. 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?
     
    Edward Kalenda, Mar 9, 2006
    #4
  5. Jimka

    Jimka Guest

    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, Mar 9, 2006
    #5
  6. Jimka

    Guest Guest

    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.
     
    Guest, Mar 10, 2006
    #6
  7. Jimka

    Jimka Guest

    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, Mar 10, 2006
    #7
  8. If they happen to know C++ better than SKILL it would make sense, I think.
     
    Svenn Are Bjerkem, Mar 12, 2006
    #8
  9. Jimka

    Jimka Guest

    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.
     
    Jimka, Mar 12, 2006
    #9
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.