when lpp=list("prBoundary" "boundary") ?
I mean, what's the cellView~>prBoundary supposed to do?
The prBoundary is the place & route boundary that instances and shapes should be placed within. The automated Place & Route tools will operate within the confines of this boundary. In IC51x and earlier the prBoundary was a shape on a specific layer-purpose pair (e.g. "prBoundary" "boundary" or "prBoundary" "drawing").
cellView~>shapes~>lpp is something else entirely: in a cellview a shape exists on a specific layer-purpose pair, querying all the shapes of the cellview (cellView~>shapes) will obtain a list of all of the shape database objects, and further querying for the 'lpp' attribute will apply that query to each of the shapes (as long as you use the "~>" operator, not the "->" operator), so the compound query returns a list of the lpps, one for each shape. If you just want to see the lpps used in the cellview, do cellView~>lpps to obtain a list of the LP (layer-purpose) objects. The lpp query is not equivalent to the lpps query; the lpp attribute of a shape is a list of the layer and purpose, the lpps attribute of the cellview is a list of the LP db objects.
Hopefully this answers your questions?
Thank you, Lawrence. Your explanation about ~> is very useful because I've never used it.Still, I would like to know something about cellView~>prBoundary. Do you mean that a kind of Encounter can use the prBoundary instead of ("prBoundary" "boundary")?
If you are using the IC61x release of virtuoso, the underlying database OpenAccess (OA) - this uses a prBoundary object to represent the place and router boundary, rather than a shape on a specific layer. The recent versions of Encounter operate on the OA database so they should understand the prBoundary object. I don't work with Encounter tools, so I'm not able to provide much more assistance on that topic, sorry.
Please state the versions that you are using and perhaps we can give better answers.
I don't know the release of Virtuoso because it's a holiday and I'm at home. But I know it's a newer version than the one I've used before.Then how they create that prBounary? Somehow through menus? What about LEF? Are the shapes still in use or not?
As Lawrence pointed out, prBoundary is now a specific object in OpenAccess, and tools that need a boundary (such as various parts of the Virtuoso Layout Suite, such as VLS-XL and the space based router, placers, etc, and also Encounter) will create such an object.
For example VLS-XL creates one when you do a generate all from source. Also you can create them manually with the Create->P&R Objects menu.
No Cadence tool is using shapes on the prBoundary/boundary layer purpose pair any more.
LEF will also use the prBoundary object.