• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. QRC Lvs Extracted View

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 126
  • Views 15383
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

QRC Lvs Extracted View

PietroUser
PietroUser over 7 years ago

I am using QRC with LVS Extracted View output in order to generate the circuit netlist from the layout.

The netlist (created with ADE-L) is the reported below. However I would like to add a custom extra line in a given subckt section (i.e I0 (net1 net2) myblock) to include an additional parasitic model for my MEMS simulation.

Is there a method for adding such a line in a spectre netlist (i.e. nlPrintComment netlister ....)?

Thanks,

Pietro

// Library name: test
// Cell name: diode_Test_Top
// View name: av_extracted
// Inherited view list: spectre cmos_sch schematic veriloga ahdl
subckt diode_Test_Top D G S Sub
avD218_3 (NW2 I1\|net11) iprobe
avD218_2 (NW1 I1\|net11) iprobe
avD218_1 (SUBSUB Sub) iprobe

TO ADD: I0 (net1 net2) myblock


\#7cI1\|avD201_5 (Sub I1\|net11) nwdiode area=2.35472e-10 \
perimeter=0.00012938 dbv=0.0 m=1
\#7cI1\|avD201_4 (Sub I1\|net11) nwdiode area=6.4e-11 perimeter=3.2e-05 \
dbv=0.0 m=1 

....

....

ends diode_Test_Top
// End of subcircuit definition.

  • Cancel
Parents
  • Quek
    Quek over 7 years ago

    Hi Pietro

    I think you can do it as follows:

    a. Create a cell named "myBlock". It should have a symbol and spectre view
    b. Add the symbol view of the cell to the extracted view
    c. Select the newly created instance
    d. Go to "Connectivity->Nets->Propagate" and add the appropriate net names for each terminal of myBlock

    e. Execute the following cmds in CIW:
    cv=geGetWindowCellView()
    dbSetConnCurrent(cv)
    dbSave(cv)

    f. Netlist the extracted view. It should now include myBlock instance


    Best regards
    Quek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • PietroUser
    PietroUser over 7 years ago in reply to Quek

    Hi Quek,

    thank you for your reply. Is it possible to do these operations with a SKILL script?

    Or by modifing the way the netlist is created?

    Best Regards,

    Pietro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • PietroUser
    PietroUser over 7 years ago in reply to Quek

    Hi Quek,

    thank you for your reply. Is it possible to do these operations with a SKILL script?

    Or by modifing the way the netlist is created?

    Best Regards,

    Pietro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Quek
    Quek over 7 years ago in reply to PietroUser

    Hi Pietro

    I think modifying the extracted view is most probably easier than manipulating the netlister. : )   Would you please try the following?

    procedure( CCSaddInstToExtractedView(lib cell view libM cellM viewM net1 net2 term1 term2)
        let( (cv cvm pt inst netId termId)
          cv=dbOpenCellViewByType(lib cell view "" "a")
          cvm=dbOpenCellViewByType(libM cellM viewM)
          pt=leftEdge(cv~>bBox):bottomEdge(cv~>bBox)-1
          inst=dbCreateInst(cv cvm nil pt "R0")
          foreach( (net term) list(net1 net2) list(term1 term2)
             netId=dbMakeNet(cv net)
             termId=dbFindTermByName(inst~>master term)
             dbCreateInstTerm(netId inst termId)
          ) ;foreach
          dbSetConnCurrent(cv)
          dbSave(cv)
          dbClose(cv)
          dbClose(cvm)
        ) ;let
    ) ;procedure

    E.g.

    CCSaddInstToExtractedView("A_testcase" "inv1" "av_extracted" "gpdk045" "resm1" "symbol" "aaa" "bbb" "PLUS" "MINUS")

    The above cmd will add an instance of resm1 into the av_extracted view. Nets aaa and bbb will be assigned to terminals PLUS and MINUS on resm1.


    Best regards
    Quek
         

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • PietroUser
    PietroUser over 7 years ago in reply to Quek

    Thank you Queck. It works perfectly.

    I was wondering whether the instance statement "I0 (aaa bbb) resm1" can be included in the netlist during the creation of the netlist itself.

    Could be this possible witht the command  "nlPrintInsComments"?

    Thanks and Best Regards,

    Pietro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information