Sim,
To answer your two questions:
Quote:Question 1:
Can I write script to do SpectreVerilog simulation directly?
For example:
circuit language simulator
analog part-------verilog-A------- spectre
digital part-------verilog ------- verilogXL
Well, running spectreVerilog from the command line isn't that easy. It can be run from within the analog design environment easily enough, and I guess you could write an OCEAN script to do it from the command line, but if you're unfamiliar with the tool, start off with doing it interactively.
The reasons for this is that this is a two simulator approach. The ADE environment will partition the design into two netlists (based on which parts need to be in which domains), and so any change of the partitioning requires a whole new netlist.
You need to start off by using the hierarchy editor to create a "config" view, which tells the netlisters which views are to be used for which blocks - and then you simulate using the config view in ADE.
I can't really go through the whole flow here - it's in the documentation (I'm sure) - but once you've got it all set up, then you could write out your session as an OCEAN script, and then it could be run in batch mode.
Alternatively you might want to consider using AMS Designer (I pointed at a tutorial for that in an earlier post) as this is a single simulator approach, and (in my opinion) considerably easier to use, especially if you're going to want to be able to use it standalone.
Quote:Question 2:
Spectre simulation is carve up to direct simulation(spectre) and socket simulation(spectreS),why ?
it's hard to use,because it take me many time to learn it.
which tool can convert spectre MOS model to SpectreS MOS model?
There are two interfaces to spectre in the Analog Design Environment. spectreS is the older (obsolete) one, and spectre is the newer one. In the past, all simulators were integrated into ADE via what was called the "cdsSpice Socket" (the S at the end of spectreS comes from "Socket"). The reason that this was done was that many simulators did not have a rich language which supported parameterisation, at least not in a consistent way. So, what happened was that with spectreS, netlists were created using cdsSpice's language and then cdsSpice would handle all the parameter evaluation, and would spit out a "final" netlist with all parameters expanded for spectre to simulate. cdsSpice is not a terribly capable simulator, but it had a flexible front end preprocessor.
Now, as you can imagine, having a second tool in the way was hardly optimal - every time you changed a parameter it had to completely recreate the netlist for spectre. Also, it tended to make each simulator look like a basic spice simulator, and it was hard to access the full capabilities of the simulator.
So, back in IC443, a new "spectre" (direct) interface was added. In this case, ADE generates a native spectre netlist in spectre's own language, which is parameterised. spectre itself takes care of evaluation of the netlist. Also, ADE talks to spectre interactively, and this allows parameters to be changed without needing to restart the simulator or to recreate the netlist - so doing things like parametric sweeps, and quick parameter changes, are much much quicker. All the model files are in spectre's own syntax (although it can handle spice syntax models too).
So, if you have a choice, I'd go for spectre. There's really little point in trying to use the spectreS interface if your design kit supports spectre. spectreS is somewhat frozen; none of the new analyses since IC443 have been added to spectreS, just to spectre.
There's no real need to convert spectre models to spectreS, because you can specify include files in spectreS to be in spectre syntax instead of cdsSpice syntax (this is on the setup->environment form in spectreS).
Regards,
Andrew.