Home > Community > Forums > Custom IC SKILL > how to create pin(pinname<1:10>) using skill scripting.

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: *

 how to create pin(pinname<1:10>) using skill scripting. 

Last post Fri, Jan 18 2013 2:50 AM by sritha. 4 replies.
Started by sritha 08 Jan 2013 10:25 PM. Topic has 4 replies and 1024 views
Page 1 of 1 (5 items)
Sort Posts:
  • Tue, Jan 8 2013 10:25 PM

    • sritha
    • Not Ranked
    • Joined on Thu, Nov 29 2012
    • Hyderabad, Andhra Pradesh
    • Posts 12
    • Points 410
    how to create pin(pinname<1:10>) using skill scripting. Reply

    Hi All,

    I am new to skill scripting. could please give me the guidelines to create pin (pinname<1:10>).

    Thanks,

    Leela.

    • Post Points: 20
  • Tue, Jan 8 2013 10:40 PM

    Re: how to create pin(pinname<1:10>) using skill scripting. Reply

    Leela,

    Is this in a schematic, a symbol, or a layout (where probably you'd want 10 individual pins)?

    In general you'd do:

    net=dbMakeNet(cvId "pinname<1:10>")
    pinMaster=dbOpenCellViewByType("basic" "ipin" "symbol")
    pinFig=dbCreateInst(cvId pinMaster "" 0:0 "R0")
    pin=dbCreatePin(net pinFig)

    Or you could use:

    pinMaster=dbOpenCellViewByType("basic" "ipin" "symbol")
    schCreatePin(cvId pinMaster "pinname<1:10" "input" nil 0:0 "R0")

    Something like that.

    Andrew.

    • Post Points: 20
  • Tue, Jan 8 2013 10:46 PM

    • sritha
    • Not Ranked
    • Joined on Thu, Nov 29 2012
    • Hyderabad, Andhra Pradesh
    • Posts 12
    • Points 410
    Re: how to create pin(pinname<1:10>) using skill scripting. Reply

     In layout.

     

    • Post Points: 20
  • Wed, Jan 9 2013 12:04 AM

    Re: how to create pin(pinname<1:10>) using skill scripting. Reply

    Obviously you'll need to create separate pins for each bit, so you'd do something like:

    pinWidth=0.5
    pinPitch=1.2:0
    pinOrigin=0:0
    pinLayer="Metal1"
    pinDirection="input"
    busPin="pinname<1:10>"
    foreach(pinName dbProduceMemName(busPin)
      ; create the pin shape, then the net (if it doesn't already exist), and then create the pin
      pinFig=dbCreateRect(cvId pinLayer list(pinOrigin xCoord(pinOrigin)+pinWidth:yCoord(pinOrigin)+pinWidth))
      net=dbMakeNet(cvId pinName)
      pin=dbCreatePin(net pinFig)
      ; make sure the terminal direction is what we want too
      pin~>term~>direction=pinDirection
      pinOrigin=xCoord(pinOrigin)+xCoord(pinPitch):yCoord(pinOrigin)+yCoord(pinPitch)
    )

    Regards,

    Andrew.

    • Post Points: 20
  • Fri, Jan 18 2013 2:50 AM

    • sritha
    • Not Ranked
    • Joined on Thu, Nov 29 2012
    • Hyderabad, Andhra Pradesh
    • Posts 12
    • Points 410
    Re: how to create pin(pinname<1:10>) using skill scripting. Reply

     Thank you, I used "dbProduceMemName()" in foreach loop to get each pin bit and then created a pin.  Its working good.

    • Post Points: 5
Page 1 of 1 (5 items)
Sort Posts:
Started by sritha at 08 Jan 2013 10:25 PM. Topic has 4 replies.