Allow / DIsallow Abutment option in a pcell - Example wanted

R

rh0dium

Guest
Hi,

Is it possible to from the schematic disallow the abutment of a pcell.
In other words when invoking the pcell properties have a toggle button
which disallows the abuting of the pcell so it must remain a single
entity. If so can you provide some example code to demonstrate this?
 
the trick for turn on/off the abutment in Pcell is create or not create the
pin for source and drain diffusion shapes.

Let's assume your parameter in CDF for abutment is "abutment" string
on/off

In your pcell code:
at the section define pin for your source and drain diffusion shapes add
if condition for it.

For example:
your current code:
dbCreatePin(for source_diffusion_id)
dbCreatePin(for drain_diffusion_id)

updated code:
when(abutment == "on"
dbCreatePin(for source_diffusion_id)
dbCreatePin(for drain_diffusion_id) )

Cheers,
--Michael
 
On Thu, 20 Jul 2006 14:30:25 -0400, "mxn731" <mxn731@yahoo.com> wrote:

the trick for turn on/off the abutment in Pcell is create or not create the
pin for source and drain diffusion shapes.

Let's assume your parameter in CDF for abutment is "abutment" string
on/off

In your pcell code:
at the section define pin for your source and drain diffusion shapes add
if condition for it.

For example:
your current code:
dbCreatePin(for source_diffusion_id)
dbCreatePin(for drain_diffusion_id)

updated code:
when(abutment == "on"
dbCreatePin(for source_diffusion_id)
dbCreatePin(for drain_diffusion_id) )

Cheers,
--Michael
The problem is that you may well want the pins to be there for routing
purposes...

Another approach is to leave the pins there, but have a pcell parameter that
stops it adding the abutment properties (e.g. abutFunction, abutAccessDir etc)
on the pins.

Or you could make your abut function check for a particular property on the
instance and allow/disallow the abutment. I'd probably use the pcell parameter
controlling whether the abut properties are added, if it was me.

Regards,

Andrew.

--
Andrew Beckett
Principal European Technology Leader
Cadence Design Systems, UK.
 
The problem is that you may well want the pins to >be there for routing
purposes..
It won't affect the routing because it is only removed pins on diffusion
objects.
Pins on metal of source and drain terminal are still created.
 
On Fri, 04 Aug 2006 16:56:29 -0400, "mxn731" <mxn731@yahoo.com> wrote:

The problem is that you may well want the pins to >be there for routing
purposes..

It won't affect the routing because it is only removed pins on diffusion
objects.
Pins on metal of source and drain terminal are still created.
But if you abut two transistors with shared source/drain, with no connection to
anything else, you'd often want to remove the metal - so the usual approach is
to keep the diffusion pins, and have the abutment properties (or not!) on those
pins.

Andrew.
--
Andrew Beckett
Principal European Technology Leader
Cadence Design Systems, UK.
 

Welcome to EDABoard.com

Sponsor

Back
Top