Re: SPICE compatibility issues

From: Marq Kole <marq.kole_at_.....>
Date: Mon Aug 15 2005 - 06:36:47 PDT
Jon,

The reason I started with make the primitives in the first place is 
because one of our designers needed them - he just wanted to use a 
resistor or a capacitor and did not want to be bothered with writing them 
himself. They are called SPICE primitives, but in most cases they're just 
electric circuit primitives - simple linear stuff, or slighly more 
elaborate current/voltage sources.

The missing items from this list  - current controlled sources and the 
mutual inductance - can be created, but they'll be different in syntax 
from their SPICE ancestors.


Marq Kole
Competence Leader Analog Simulation, Philips ED&T










Jonathan Sanders 
25-07-2005 23:05

To
Marq Kole/EHV/RESEARCH/PHILIPS@PHILIPS
verilog-ams@eda.org
cc

Subject
Re: SPICE compatibility issues
Classification







Marq,

Whether to include in the LRM or as part of a example suite is a good 
offer that we should consider.

I've always looked at Annex E (was around back when it was being written) 
as more of a methodology guide.   The first couple of pages point out most 
of the issues when dealing with the reality of EDA tools yet provide a 
methodology of how each of the vendors (and users) could work through 
this.

The place we have strongly pushed away from was trying to "standardize" 
SPICE from within the Verilog-AMS LRM.   SPICE is a completely different 
language (please forgive me for calling it a language) so we focused more 
on interoperability . 

Vendors like Cadence have done the same thing for making VHDL and Verilog 
talk together as well as SystemC, Matlab, and other languages/tools.    In 
the case of SPICE and Verilog-AMS there was too much required 
interoperability to ignore this so a methodology using "standard" or 
"common" primitives was provided with the hope of some standardizing 
between the vendors.   Some of the names were changed as folks felt the 
table looked too much like Spectre syntax but the goal was just 
understandable names.

Jon

At 08:00 AM 7/22/2005, Marq Kole wrote:

All, 

With respect to the Verilog-AMS LRM Annex E on SPICE compatibility I would 
like to make a few comments - and a donation. 

In table E.1 the names diode, bjt, mosfet, jfet and mesfet are essentially 
marked as specific use only, but at the same time their use in this 
particular form is prevented from occuring due to the limitations of 
SPICE-descendent circuit simulators - limitations, by the way, that do not 
apply to all analog circuit simulators . I think these names should be 
removed from the table E.1. 

If a certain primitive is not available in a circuit simulator that 
supports Verilog-A(MS), it should be possible to create a module in 
Verilog-A that operates exactly like that particular primitive. In that 
way these primitives can be used in all Verilog-A(MS) and they really can 
be depended on to be available in an implementation. 
This is possible for all primitives in the table E.1 except vpwl and ipwl. 
These two sources use a "wave" which is an arbitrary length array of 
time/value pairs. To make an Verilog-A implementation of such a source the 
arbitrary length array should be replaced with a parameter-length array, 
with the length parameter given before the array. 

Now the donation: I have created Verilog-A versions of all primitives in 
table E.1 and I am willing to donate these to Accellera as a set of basic 
primitives that can be used in all simulators that support Verilog-A(MS). 
This also includes vpwl and ipwl, only with the modified interface that 
includes a length parameter. Would this be an acceptable addition to the 
standard or would it have to have another status? 

Regards, 
Marq 


Marq Kole
Competence Leader Analog Simulation, Philips ED&T
***********************************************************
Jonathan L. Sanders 
Product Engineering Director
Custom IC Solutions 
Cadence Design Systems, Inc. 
555 River Oaks Pkwy
San Jose, CA. 95134
 INTERNET:jons@cadence.com    Tel: (408) 428-5654      Fax : (408) 
944-7027
***********************************************************
Received on Mon Aug 15 06:40:23 2005

This archive was generated by hypermail 2.1.8 : Mon Aug 15 2005 - 06:40:33 PDT