Andrew Beckett
Senior Fellow
Offline
Life, don't talk to me about Life...
Posts: 1742
Bracknell, UK
|
Stephen,
By the way, the requirement is to "check" (the save is not important), if necessary. In essence this is to ensure that the connectivity information in the database has been updated since the last modification for each cellView in the design hierarchy being netlisted.
All netlisters (including spectreS) have this requirement. However, spectreS does a hierarchical check first before it starts to netlist, and that's why you don't see it. When the spectre direct interface was added back in IC443, it was found that having to go around and check which cellViews needed checking took a similar amount of time as doing the netlisting - so your netlisting time doubled (don't take this as an exact figure, I can't remember as it was a few years ago). This was seen as rather an overhead if you hadn't actually changed anything, or had already done the check yourself. Of course, for single cellView simulations, it probably doesn't take very long to netlist anyway, but imagine very large, multi-schematic designs.
The netlister does tell you if it encounters a block which needs re-extracting (i.e. checking).
If you wanted to get the spectre interface to do the check first, then that would be possible. What you could do is to customise the menus when using the spectre interface - take a look at:
<instdir>/tools/dfII/etc/tools/menus/spectre.menus
You could put wrappers around the sevNetlist.* functions which called schCheck() or schCheckHier() first, and then replace the menu entries with these wrapper functions.
Alternatively, just get used to doing a check whenever you modify anything - you're going to need to do it sooner or later for other tools anyway.
Regards,
Andrew.
|