Create a tech lib with skill

C

camelot

Guest
Hi,
could someone help me in creating a technology library in skill?

Example:
I've a tech file named mytech.ascii (in ascii format) and I want to
create the lib "NEW_TECH_LIB" loading this ASCII techfile. Something
similar to the first option when you create a new lib interactively.

Thank you,

Camelot
 
Hi Camelot,

The following Skill procedure does what you want.
1. Load this procedure into your CIW
2. Execute the procedure as following:
CIW> RKcreateTechLib("NEW_TECH_LIB" "." "mytech.ascii")
The second argument above, i,e "." is the path where "NEW_TECH_LIB" is
created. The current directory in this example. You may change this.
The techFile Skill functions as below are all documented in the
Technology File and Display Resource File SKILL Reference Manual. This
manual is available from your Cadence stream at the following
location:
$CDSHOME/doc/sktechfile/sktechfile.pdf

; Skill starts here
procedure( RKcreateTechLib(libName libPath techFileName "ttt")
let((techFileId)
; 1. Create the technology library
when( ddCreateLib(libName libPath)
; 2. create the techfile fo the technology library, open it in W
mode
techFileId = techOpenTechFile(libName "techfile.cds", "w")
; 3. compile the ascii techfile for the new library
tcLoadTechFile(techFileId techFileName "w")
; 4. save the compiled techFile to the new library
techSaveTechFile(techFileId)
; 5. close the techFile
techCloseTechFile(techFileId)
)
)
)
; Skill ends here

Regards,
Riad.
 
On 5 Mar, 23:51, Riad KACED <riad.ka...@gmail.com> wrote:
Hi Camelot,

The following Skill procedure does what you want.
1. Load this procedure into your CIW
2. Execute the procedure as following:
   CIW> RKcreateTechLib("NEW_TECH_LIB" "." "mytech.ascii")
The second argument above, i,e "." is the path where "NEW_TECH_LIB" is
created. The current directory in this example. You may change this.
The techFile Skill functions as below are all documented in the
Technology File and Display Resource File SKILL Reference Manual. This
manual is available from your Cadence stream at the following
location:
$CDSHOME/doc/sktechfile/sktechfile.pdf

; Skill starts here
procedure( RKcreateTechLib(libName libPath techFileName "ttt")
  let((techFileId)
    ; 1. Create the technology library
    when( ddCreateLib(libName libPath)
      ; 2. create the techfile fo the technology library, open it in W
mode
      techFileId = techOpenTechFile(libName "techfile.cds", "w")
      ; 3. compile the ascii techfile for the new library
      tcLoadTechFile(techFileId techFileName "w")
      ; 4. save the compiled techFile to the new library
      techSaveTechFile(techFileId)
      ; 5. close the techFile
      techCloseTechFile(techFileId)
    )
  )
)
; Skill ends here

Regards,
Riad.

Thank you very much!!

Regards,

Camelot
 
camelot wrote, on 03/08/10 07:20:
On 5 Mar, 23:51, Riad KACED<riad.ka...@gmail.com> wrote:
Hi Camelot,

The following Skill procedure does what you want.
1. Load this procedure into your CIW
2. Execute the procedure as following:
CIW> RKcreateTechLib("NEW_TECH_LIB" "." "mytech.ascii")
The second argument above, i,e "." is the path where "NEW_TECH_LIB" is
created. The current directory in this example. You may change this.
The techFile Skill functions as below are all documented in the
Technology File and Display Resource File SKILL Reference Manual. This
manual is available from your Cadence stream at the following
location:
$CDSHOME/doc/sktechfile/sktechfile.pdf

; Skill starts here
procedure( RKcreateTechLib(libName libPath techFileName "ttt")
let((techFileId)
; 1. Create the technology library
when( ddCreateLib(libName libPath)
; 2. create the techfile fo the technology library, open it in W
mode
techFileId = techOpenTechFile(libName "techfile.cds", "w")
; 3. compile the ascii techfile for the new library
tcLoadTechFile(techFileId techFileName "w")
; 4. save the compiled techFile to the new library
techSaveTechFile(techFileId)
; 5. close the techFile
techCloseTechFile(techFileId)
)
)
)
; Skill ends here

Regards,
Riad.


Thank you very much!!

Regards,

Camelot
Probably wise to call techGetTechFileName() rather than hardcoding
"techfile.cds" as then it will work in both IC5141 and IC61. If you use
"techfile.cds" you'll need to change the code when you go to IC61.

For example:

techGetTechFileName(techOpenDefaultTechFile())

Regards,

Andrew.
 
On 9 Mar, 11:16, Andrew Beckett <andr...@DcEaLdEeTnEcTe.HcIoSm> wrote:
camelot wrote, on 03/08/10 07:20:





On 5 Mar, 23:51, Riad KACED<riad.ka...@gmail.com>  wrote:
Hi Camelot,

The following Skill procedure does what you want.
1. Load this procedure into your CIW
2. Execute the procedure as following:
    CIW>  RKcreateTechLib("NEW_TECH_LIB" "." "mytech.ascii")
The second argument above, i,e "." is the path where "NEW_TECH_LIB" is
created. The current directory in this example. You may change this.
The techFile Skill functions as below are all documented in the
Technology File and Display Resource File SKILL Reference Manual. This
manual is available from your Cadence stream at the following
location:
$CDSHOME/doc/sktechfile/sktechfile.pdf

; Skill starts here
procedure( RKcreateTechLib(libName libPath techFileName "ttt")
   let((techFileId)
     ; 1. Create the technology library
     when( ddCreateLib(libName libPath)
       ; 2. create the techfile fo the technology library, open it in W
mode
       techFileId = techOpenTechFile(libName "techfile.cds", "w")
       ; 3. compile the ascii techfile for the new library
       tcLoadTechFile(techFileId techFileName "w")
       ; 4. save the compiled techFile to the new library
       techSaveTechFile(techFileId)
       ; 5. close the techFile
       techCloseTechFile(techFileId)
     )
   )
)
; Skill ends here

Regards,
Riad.

Thank you very much!!

Regards,

Camelot

Probably wise to call techGetTechFileName() rather than hardcoding
"techfile.cds" as then it will work in both IC5141 and IC61. If you use
"techfile.cds" you'll need to change the code when you go to IC61.

For example:

techGetTechFileName(techOpenDefaultTechFile())

Regards,

Andrew.- Nascondi testo citato

- Mostra testo citato -
Yes Andrew, I used this function just for compatibility issues, thank
you, once again :) , for underlining it!

Camelot
 
Hi Andrew,

Thanks for highlighting this !
I did not know this one I would admit.

Regards,
Riad.
 

Welcome to EDABoard.com

Sponsor

Back
Top