
www.Usenet.com
| <-- __Chronological__ --> | <-- __Thread__ --> |
Frank, On Tue, 25 Nov 2003 13:16:02 -0800, "gennari" <[EMAIL PROTECTED]> wrote: >A few years ago I had to write a separate C++ program to get around some of >the limitations of SKILL, and then call that program from SKILL. In >particular, SKILL/Cadence crashed when I tried to create a hash table of >several hundred thousand x/y points. Also, I couldn't find any way of >performing bit-level operations in SKILL such as bitshifts, bit masking, >etc. In fact I think skill uses 32 bits in all integers, even when I only >need to store an 8-bit value, and that's 4X memory overhead. I eventually >had to implement the layout database and gometry query functions into my C++ >program to aviod writing I/O files of many MB. Now the program is >independent of Cadence, but I wonder if all that work was really worth it. > functions such as bor, band - which are equivalent to operators | and &. Also bnand, bnor, bxor, bxnor (operators for each of these too). leftshift, rightshift (<< and >>). The bitfield, bitfield1 functions as well are useful. These are equivalents of doing something like: a=1234 a<4:2> => 4 a<4> => 1 a<<1 => 2468 a>>2 => 308 a&10 => 2 a|5 => 1239 a^2 => 1232 (xor) Bet you didn't know you could do that ;-( They're all documented, and have been there for as long as I can remember. >Oh, and as a side note, is there any way to create a small bitmap image in >Cadence other than building it from single pixel rectangles on the >multi-colored "y0" - "y9" layers in the LSW? It takes a really long time to >do this in SKILL. > Depends what you want to use the bitmap for. If it's for menu items, icons etc in DFII, then hiStringToIcon and related functions would help. Some of the ^dl (displayList) functions can be used too (don't get used much, but can be quite handy). Andrew. >Frank > >"Andrew Beckett" <[EMAIL PROTECTED]> wrote in message >news:[EMAIL PROTECTED] >> You could use the Integrators Toolkit (ITK-DB). This allows you to write >> standalone applications which access the database from C, and there is >some >> (limited) support for invoking SKILL from this. >> >> However, I suspect this is not what you want. You can't (for example) link >in >> some C code with DFII and call that from SKILL (we don't support that, for >> a variety of reasons - one being that it is rarely necessary). What you >can do >> however is to write your computationally intensive tasks in a separate >program, >> which you can then invoke using the ipc function calls (e.g. >ipcBeginProcess), >> and then communicate to that external program either synchronously or >> asynchronously. This can be quite an effective means of doing things >outside. >> >> What sort of intensive operations are you talking about? SKILL can be >pretty >> quick provided that you do things correctly (it's byte-code compiled, >> and runs on a virtual machine). >> >> Regards, >> >> Andrew. >> >> >> On Mon, 24 Nov 2003 15:20:13 -0700, sampath <[EMAIL PROTECTED]> wrote: >> >> >Hi, >> >is there anyway that i can mix skill and c code, >> >I am looking for a way to do some runtime intensive operations in c and >> >get the data into a skill code? >> >can somebody tell a solution? >> >sampath >> >> -- >> Andrew Beckett >> Senior Technical Leader >> Custom IC Solutions >> Cadence Design Systems Ltd > -- Andrew Beckett Senior Technical Leader Custom IC Solutions Cadence Design Systems Ltd
| <-- __Chronological__ --> | <-- __Thread__ --> |