Home > Community > Forums > Custom IC SKILL > oa2verilog using skill

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 oa2verilog using skill 

Last post Thu, Jan 17 2013 1:39 AM by Myskill. 4 replies.
Started by Myskill 16 Jan 2013 02:46 AM. Topic has 4 replies and 836 views
Page 1 of 1 (5 items)
Sort Posts:
  • Wed, Jan 16 2013 2:46 AM

    • Myskill
    • Not Ranked
    • Joined on Thu, Nov 8 2012
    • hyderabad, Andhra Pradesh
    • Posts 12
    • Points 310
    oa2verilog using skill Reply

    Hi All,

                  I am going to executing following code for generation of oa file to verilog file automatically present editing oa file (schematic or layout). But I am getting the error "Cannot read library libname in cds.lib because it is not open or it does not exist" could you please help on this

    SKILL CODE:-

    procedure(verilog()
    cv = geGetWindowCellView()
    libname = cv~>libName
    cellnmae = cv~>cellName
    viewname = cv~>viewName
    s1 = ipcBeginProcess("oa2verilog -lib libname -cell cellname -view viewname -verilog viewname -recursive"
     "" nil nil nil "/remote2/test_proj/analog_project/tsmc/users/rambabu/oa2verilog1.log")
    )

     ERROR:-

    *****************************************************************************
    Tool:           oa2verilog          22.04.071
    *****************************************************************************
    Running: oa2verilog -lib libname -cell cellname -view viewname -verilog viewname -recursive
    Started: Mon Jan 16 15:52:35 2012 (Hostname: orange)
    ERROR: (OAVLG-10009): Cannot read library libname in cds.lib because it is not open or it does not exist
    Finished:       oa2verilog
    Time elapsed:   0.24 seconds
    CPU Time:       0.068989 seconds
    System Time:    0.036994 seconds
    Peak VM:        2158592 bytes
    Messages:       1 error, 0 warnings

     

    Thanks,

    Rambabu

    • Post Points: 20
  • Wed, Jan 16 2013 5:50 AM

    Re: oa2verilog using skill Reply

    Hi Rambabu,

    Variables do not get magically evaluated in literal strings, so "libname" etc are treated literally in the string passed to ipcBeginProcess.

    You'd need something like:

     s1 = ipcBeginProcess(sprintf(nil "oa2verilog -lib %s -cell %s -view %s -verilog %s -recursive" libname cellname viewname viewname)
     "" nil nil nil "/remote2/test_proj/analog_project/tsmc/users/rambabu/oa2verilog1.log")

    You'll also have to correct your code so that cellnmae is actually spelt as cellname (I decided not to repeat your typo in the code above).

    The sprintf builds the string inserting the values of the variables into the appropriate places.

    Andrew.

    • Post Points: 20
  • Wed, Jan 16 2013 9:14 PM

    • Myskill
    • Not Ranked
    • Joined on Thu, Nov 8 2012
    • hyderabad, Andhra Pradesh
    • Posts 12
    • Points 310
    Re: oa2verilog using skill Reply
    Thanks for your suggestion. I am getting another error if I go as per your suggestion could you please debug and let me know

    *Error* fprintf/sprintf: format spec. incompatible with data - "Format is 'oa2verilog -lib %s -cell %s -view %s -verilog %s -recursive', argument #1 is nil"


    Thanks,

    Rambabu
    • Post Points: 20
  • Thu, Jan 17 2013 1:30 AM

    Re: oa2verilog using skill Reply

    Have you any experience with programming at all? If so, I'd expect that you'd have some understanding of basic debugging techniques - such as checking that the data you're passing to functions is valid. You might want to attend a SKILL Programming class (or any programming class), and read the SKILL Language User Guide too. 

    I don't mean to be rude, but the error message fairly clearly tells you that the libname variable must be nil (i.e. not the library name). If you'd put some print statements in your code (or used the SKILL debugger) you could have checked that. The most likely explanation (assuming your code is essentially the same as that you posted earlier) is that cv is nil, because you're running with the current window not being your schematic or layout window - and hence geGetWindowCellView() is returning nil.

    That said, I'd have expected that you'd see a warning in your CIW if this was the case (and that might have alerted you to the problem?):

    *WARNING* (GE-2067): geGetWindowCellView: There is no graphical edit environment assigned to window(2) because the window is not a graphic editor window.

    Make sure that your current window is a valid graphic editor window.

    If it is a valid graph editor window, contact customer service to investigate this issue.

    Either way, check the variables in your code, and ensure they're being set properly.

    Regards,

    Andrew.

    • Post Points: 20
  • Thu, Jan 17 2013 1:39 AM

    • Myskill
    • Not Ranked
    • Joined on Thu, Nov 8 2012
    • hyderabad, Andhra Pradesh
    • Posts 12
    • Points 310
    Re: oa2verilog using skill Reply
    thank you now it's working
    • Post Points: 5
Page 1 of 1 (5 items)
Sort Posts:
Started by Myskill at 16 Jan 2013 02:46 AM. Topic has 4 replies.