home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.cad.cadence
- Path: sparky!uunet!indetech!daver!cypress.com!reb
- From: reb@cypress.com (Risto Bell/CAD)
- Subject: Re: DIVA extraction of 2-terminal MOS
- In-Reply-To: why@bnr.ca's message of 11 Nov 92 19:21:30 GMT
- Message-ID: <REB.92Nov12125723@wy.cypress.com>
- Lines: 43
- Sender: news@cypress.com
- Nntp-Posting-Host: 192.84.72.13
- Organization: Cypress Semiconductor Southeast Design Center
- References: <1992Nov11.105929.11702@walter.cray.com>
- <1992Nov11.192130.16923@bcrka451.bnr.ca>
- Date: Thu, 12 Nov 1992 18:58:37 GMT
-
- In article <1992Nov11.192130.16923@bcrka451.bnr.ca> why@bnr.ca (Graeme Boyd) writes:
-
- > In article <1992Nov11.105929.11702@walter.cray.com>, toma@baritone (Thomas Arneberg) writes:
- > > Sometimes we tie together the drain and source nodes of an NMOS or PMOS
- > > device, to make it into a capacitor. But then DIVA layout extraction
- > > considers it some new two-terminal device, and will not extract it as a
- > > regular MOS device with two terminals tied together.
- ...
- > This same "feature" is in PDV of EDGE, in both cases one solution is:
- > extractDevice( ngate (gate "G") (ndiff "S" "D") (pwell "B") "nmos4" )
- > extractDevice( ngate (gate "G") (ndiff "D") (pwell "B") "cap3" )
- ...
- > Hence you require one additional symbol with 3 nodes. Then use the
- > netlister(s) to create shorted MOS gates or capacitors depending on
- > what the requirements are.
-
- We go ahead and maintain the cap form library elements, in part because they
- can reduce schematic clutter, but also due to this long-standing Cadence
- limitation of basing terminals on logically distinct nets rather than
- geometrically distinct terminal connections.
-
- Theoretically you could use multiple device statements as in the following
- rough example (sorry its in Edge syntax and its for a resistor not a
- transistor):
-
- dmyterm = or resterm;
- connect ... resterm, dmyterm, by ...;
- ...
- dmyres = or resdev;
- device( resdev, resterm = 2 "r0"|"r1", M = "rp" );
- device( resdev, resterm = 1, no_error );
- device( dmyres, resterm = 2, dmyterm = 2, no_error );
- device( dmyres, resterm = 1 "r0", dmyterm = 1 "r1", M = "rp" );
-
- Creation of appropriate dummy copies of device and terminal layers can be
- extended to more than two terminals, but at the cost of an exponential number
- of device statements. And your measure statements still have just one
- terminal to contend with in the shorted case.
-
- (Diva equivalent to the pdverify no_error option is specify nil for the model
- name.)
- --
- -Risto reb@cypress.com "Have you got a 27B stroke 6?"
-