Parameterized Schematic Instances?

S

Spaceghost

Guest
Hi, I'm trying to find out how to make parameterized schematic instances.
For example, I would like to create an inverter and be able to place many
instances that all have different transistor aspect ratios, settable on the
properties dialog for the instance.

I've tried filling in pParam("nwidth") for the nfet width. This then
appears in the CDF when I go to make a symbol. When I place an inverter
instance in the schematic, I can specify the nwidth parameter. However,
when Spectre netlists the instance, it set w=pParam("nwidth"), instead of
correctly placing a number in the netlist.

Anyhow, I'm sure this is a common thing, otherwise you've have to create way
too many different schematics. In fact, I used this setup in Cadence before
but don't remember exactly how it's done.

Help! :) Thanks!

Marc
 
Hmm, I wish I could help but don't really know what the goal is.

Marc

"oghdayan" <oghdayan_AT@xs4all_dot.nl> wrote in message
news:410c36c0$0$139$e4fe514c@dreader19.news.xs4all.nl...
Spaceghost wrote:
Hi, I'm trying to find out how to make parameterized schematic
instances.
For example, I would like to create an inverter and be able to place
many
instances that all have different transistor aspect ratios, settable on
the
properties dialog for the instance.

I've tried filling in pParam("nwidth") for the nfet width. This then
appears in the CDF when I go to make a symbol. When I place an inverter
instance in the schematic, I can specify the nwidth parameter. However,
when Spectre netlists the instance, it set w=pParam("nwidth"), instead
of
correctly placing a number in the netlist.

Anyhow, I'm sure this is a common thing, otherwise you've have to create
way
too many different schematics. In fact, I used this setup in Cadence
before
but don't remember exactly how it's done.

Help! :) Thanks!

Marc

Hi Marc,
I wish to make stg related, but slightly more complicated: a schematic
with N series resistors.
The resistors could come from any PDK. The symbol would have a
annotation with the cell name of the PDK resistor, and either nominal
resistance or current.
I suppose this can be done with a pcell schematic view, but if any of
you have more precise ideas to kickstart me, that would be welcome.
 
Spaceghost wrote:
Hi, I'm trying to find out how to make parameterized schematic instances.
For example, I would like to create an inverter and be able to place many
instances that all have different transistor aspect ratios, settable on the
properties dialog for the instance.

I've tried filling in pParam("nwidth") for the nfet width. This then
appears in the CDF when I go to make a symbol. When I place an inverter
instance in the schematic, I can specify the nwidth parameter. However,
when Spectre netlists the instance, it set w=pParam("nwidth"), instead of
correctly placing a number in the netlist.

Anyhow, I'm sure this is a common thing, otherwise you've have to create way
too many different schematics. In fact, I used this setup in Cadence before
but don't remember exactly how it's done.

Help! :) Thanks!

Marc
Hi Marc,
I wish to make stg related, but slightly more complicated: a schematic
with N series resistors.
The resistors could come from any PDK. The symbol would have a
annotation with the cell name of the PDK resistor, and either nominal
resistance or current.
I suppose this can be done with a pcell schematic view, but if any of
you have more precise ideas to kickstart me, that would be welcome.
 
Spaceghost wrote:
Hmm, I wish I could help but don't really know what the goal is.
Have a versatile symbol for placing foundry resistors in series. The PDK resistors very often do not support a parameter for number of series elements ( or "number of fingers" ). And when they do, it is often necessary to avoid using it because the layouter want something else than what the pcell generates. As a design house, we are not supposed to mess with the PDK, so it is not really possible to simply add the CDF and put support for this in model files, decks, netlisters, etc.
This results in schematics that have "shish kebabs" of resistors, unreadable, ugly, not maintainable. Of course the situation could be helped if the fonts in composer had been chosen more carefully. It is easy to read a schematic with 50 devices on screen when using microsim schematic, but it is a tour-de-force with composer.

Anyway, the best solution I can see is a schematic generating cell that has 4 parameters: lib/cell/view, and number of series elemements. After that the property form of the instanced PDK resistor would pop-up, and when OK'ed, the schematic be created.

"oghdayan" <oghdayan_AT@xs4all_dot.nl> wrote in message
news:410c36c0$0$139$e4fe514c@dreader19.news.xs4all.nl...

Spaceghost wrote:

Hi, I'm trying to find out how to make parameterized schematic

instances.

For example, I would like to create an inverter and be able to place

many

instances that all have different transistor aspect ratios, settable on

the

properties dialog for the instance.

I've tried filling in pParam("nwidth") for the nfet width. This then
appears in the CDF when I go to make a symbol. When I place an inverter
instance in the schematic, I can specify the nwidth parameter. However,
when Spectre netlists the instance, it set w=pParam("nwidth"), instead

of

correctly placing a number in the netlist.

Anyhow, I'm sure this is a common thing, otherwise you've have to create

way

too many different schematics. In fact, I used this setup in Cadence

before

but don't remember exactly how it's done.

Help! :) Thanks!

Marc

Hi Marc,
I wish to make stg related, but slightly more complicated: a schematic
with N series resistors.
The resistors could come from any PDK. The symbol would have a
annotation with the cell name of the PDK resistor, and either nominal
resistance or current.
I suppose this can be done with a pcell schematic view, but if any of
you have more precise ideas to kickstart me, that would be welcome.
 

Welcome to EDABoard.com

Sponsor

Back
Top