Signalstorm Problems
Signalstorm Problems
org
http://www.chiptalk.org/modules/newbb/print.php...
SignalStorm problems
Posted by jbakos on 2005/12/13 9:24:36
Hello!
I'm having some issues with SignalStorm.
First, I'm trying to get SignalStorm to work using spectre as the simulation engine, since
apparently we don't have an HSPICE license (shouldn't the HSPICE license be included
with our Cadence licenses?).
Here's where I am. Let's say I have a simple inverter spectre netlist. Here it is...
subckt inv A Z vdd gnd
\+1 (Z A vdd vdd) PFET w=6e-06 l=6e-07 as=9e-12 ad=9e-12 ps=9e-06 \
pd=9e-06 m=1 region=sat
\+0 (Z A gnd gnd) NFET w=3e-06 l=6e-07 as=4.5e-12 ad=4.5e-12 ps=6e-06 \
pd=6e-06 m=1 region=sat
ends inv
Note that I changed this netlist from what the netlister produced. First, I replaced the
global "vdd!" and "0" nets with "vdd" and "gnd", then I added these to the subcircuit
interface. From what I understand, SignalStorm won't recognize global supply nets. Also, I
changed the model names to "PFET" and "NFET" to match the special SignalStorm SPICE
model le from the OSU-StdCells.
So far so good. Now, I start SignalStorm with "slc".
Then I type:
set_var SG_SPICE_SIMPLIFY true
set_var SG_SPICE_SUPPLY1_NAMES "vdd"
set_var SG_SPICE_SUPPLY0_NAMES "gnd"
db_open scells
Note: setting SG_SIM_TYPE and SG_SIM_NAME don't seem to make ANY dierence, so I
don't do that anymore.
Now I type:
db_install -model ami06.m -subckt scells.scs
...and I get:
==== Simplify Mode ====
1 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
Note: scells.scs is the le shown above, while ami06.m is actually "ami05.m" from the
signalstorm directory of the OSU-stdcells.
Okay, so far so good!
Now I run into a brick wall.
I type:
db_gsim
...and I get:
=============================================
ENVIROMENT PARAMETERS FOR VECTOR GENERATION
=============================================
DS_REDUCT_DELAY_FLAG
: true
DS_REDUCT_RACE_FLAG
: true
DS_MEASURE_HOLD_FLAG
: true
DS_MEASURE_REMOVABLE_FLAG : true
DS_INTERNAL_RACE_FLAG
: true
=============================================
Reading : scells.ipdb/INV.design
==============================
DESIGN : INV
==============================
---------------------------------------------------------=> 0 vectors generated
Writing : scells.ipdb/INV.design/simulate/spec
Writing : scells.ipdb/INV.design/simulate/subckt
[WARNING(db_gsim)]alone net : A is found. => [reset to ground]
[WARNING(db_gsim)]alone net : Z is found. => [reset to ground]
[WARNING(db_gsim)]alone net : VDD is found. => [reset to ground]
[WARNING(db_gsim)]alone net : GND is found. => [reset to ground]
================================
stimulus generation summary
================================
Name
#MOS
#DVEC
#RVEC
----------------------------------------
2 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
INV
0
0
0
*
---------------------------------------0
0
This works for me. If you have a chance to try it without the SIMPLIFY and with a Spice
netlist, that might be the easiest way of getting it to work.
Thanks,
Johannes
3 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
SPICE models with a Spectre netlist. Once I converted the NCSU SPICE models to Spectreformat using spp, SignalStorm generated the vectors with no problems.
However, now I'm stuck at another problem. I can't seem to get the simulator running. I'm
setting up the simulation daemon by running "ipsd", then "ipsc -w 4", then "ipsc -w 4 -n
spectre". Everything appears to start up ne, because after the third command I get a
message saying that there's 300 available spectre licenses.
By the way, is this the correct sequence of operations?
Next I open SLC (on the same machine), but when I issue the "db_spice -keep_log -s
spectre" command, I get:
slc> db_spice -keep_log -s spectre
DESIGN
PROCESS
#ID
STATUS
------------+------------+---------+-------------INV
typical
D0000
SIMULATE
INV
typical
D0001
SIMULATE
============|============|=========|==============
INV
typical
2
2
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*Simulation Summary
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*------------+------------+---------+------------+---------DESIGN
|
PROCESS |
#ID
|
STAGE
| STATUS
------------+------------+---------+------------+---------INV
typical
D0000
INITIAL
FAIL
INV
typical
D0001
INITIAL
FAIL
------------+------------+---------+------------+---------[INFO(db_spice)] Check the sigstormlc.log/<DESIGN>_<PROCESS>_<ID>.log file
to determine the cause of the failure. The SPICE simulation log file can
be found in the sigstormlc.work/<DESIGN>_<PROCESS>_<ID>/ directory.
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- Total Simulation : 2
- Total Passed
: 0(0%)
- Total Failed
: 2(100%)
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
...but when I check, there's NOTHING in the sigstormlc.log directory, and nothing in the
sigstormlc.work directory but a le named .slcrc containing a set of variables.
If I turn o the simulation daemon, I get this (as expected):
[ERROR(db_spice)]cannot establish client-server
4 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
============|============|=========|==============
INV
typical
2
2
[ERROR(db_spice)]t/f1/jbakos/cds_work/ss/sigstormlc.work: No such file or directory
[ERROR(db_spice)]t/f1/jbakos/cds_work/ss/sigstormlc.work: No such file or directory
[ERROR(db_spice)]t/f1/jbakos/cds_work/ss/sigstormlc.work: No such file or directory
[ERROR(db_spice)]t/f1/jbakos/cds_work/ss/sigstormlc.work: No such file or directory
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*Simulation Summary
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*------------+------------+---------+------------+---------DESIGN
|
PROCESS |
#ID
|
STAGE
| STATUS
------------+------------+---------+------------+---------INV
typical
D0000
INITIAL
FAIL
INV
typical
D0001
INITIAL
FAIL
------------+------------+---------+------------+---------[INFO(db_spice)] Check the sigstormlc.log/<DESIGN>_<PROCESS>_<ID>.log file
to determine the cause of the failure. The SPICE simulation log file can
be found in the sigstormlc.work/<DESIGN>_<PROCESS>_<ID>/ directory.
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- Total Simulation : 2
- Total Passed
: 0(0%)
- Total Failed
: 2(100%)
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
...and again, there's nothing in the log or work directories. In this case, it looks like
SignalStorm is getting some garbage text when it queries for my current working directory.
Maybe these errors (ipsd/LSF) are related?
Also, here's another question for you... is there a way to dene a cell group in the
SignalStorm setup le that will match all cells that aren't matched by the other groups? In
other words, how do you dene a default group? Do you have to do something like this:
Group DEFAULT_GROUP {
CELL = * ;
};
...or will this group gobble up all the cells, even the ones with special suixes?
Thanks,
-Jason
5 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
6 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
Did this get garbled up just by the website or is this what slc reports? What should the
directory really be? Are there any special circumstances that could cause the directory
name to be mishandled?
When you use the LSF submission command you only work on the local machine, so you
may want to move your slc data to a local folder like /tmp and try again. That way we could
see if the network has anything to do with it.
Johannes
7 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
- Total Passed
: 0(0%)
- Total Failed
: 2(100%)
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
It looks like SLC can't seem to determine the correct current path. I have no idea why... it
doesn't seem to have any problem reading les or writing the database directory, or even
writing empty log and work directories.
Thanks,
-Jason
8 of 9
www.chiptalk.org
http://www.chiptalk.org/modules/newbb/print.php...
-Jason
9 of 9