As by title, is it possible to run a tran simulation wherein errpreset parameter takes a different value for different cells in the netlist? I know it is possible to vary errpreset for different simulation time windows, but am not aware of such option for different cells.
The goal is to set loose tolerances for digital blocks consisting of relatively big number of gates wherein precision is not so important. (Yes, I imagine it would be possible to use a verilog-A model instead of a schematic view for such cell to achieve faster simulation time, however, having already the schematic view of the cell it would not be convenient to model it from scratch, especially when one wants to model also details like the fact that the rise/fall time of a NAND, for example, depends also on which of its inputs is toggling and not only the direction, or the loading affecting some gates in different ways).
Version used is ICADVM20.1
Thank you very much
You can't set errpreset per instance or cell, but you can set reltol (errpreset wouldn't make sense because some of the settings need to affect more than just a part of the design in practice). I did give a way to do this in this post, and mentioned that it can be done with MTS. That's probably the simplest - ensure your test is defined with a config view, and then you can use Right Mouse->MTS Options over the test and you can set reltol per block or per instance. Here's what the UI looks like:
Thank you Andrew. Also another question: when I set reltol for a cell through MTS options, is the reltol for that cell affected as normally by errpreset?
i.e. if I set reltol=1e-4 for cell ampn in your exampl, and I set the tran analysis to be liberal, the actual reltol used for ampn will be still 1e-4 or 1e-3 (as liberal normally does x10 on the global reltol setting)?
I don't know the answer. My gut feel is that it should be multiplied (that's what happens with dynamic parameters if you vary reltol during the transient), but I actually don't know. I've asked Spectre R&D and will post back here once I have an answer.
R&D have confirmed that the scoped reltol is indeed scaled by the multipliers for errpreset liberal/conservative. I've requested that the documentation is updated to make this clear.