Can you not just use Setup->Model Libraries or Setup->Simulation Files (Definition Files) to do this?
i can do that via skill .But if i do ADE ->netlist and run i dont see netlist getting updated with model files included in model libs.Every time i need to do ADE->recreate netlist for model changes in netlist
The netlist wouldn't get updated if you edit one of the included files - there's no need, since it hasn't changed.
However, I suspect that what you're saying is that if you have set up a file to be included via Model Libraries or Definition file, and then edit that file between runs, you don't see the impact of any change? If so, that's a consequence of spectre running in "interactive" mode. In "interactive" mode, spectre does not exit after each simulation, so that a parameter change can be efficiently re-run by just changing the value in spectre's memory rather than having to start from scratch.
So if you are editing the file, you either can use the Edit button on the Setup->Model Libraries form (this will tell ADE that the file has changed, and hence spectre must be restarted), or you can just hit the Simulation->Stop menu before running again, or you could use:
envSetVal("spectre.envOpts" "controlMode" 'string "batch")
before starting ADE (but this will reduce performance a bit if you are doing parametric sweeps and so on - but these days it should not be that significant).
The problem statement i have is that ..
-->I update model libraries with 10 files initially via SKILL.Then i update the model library remove 5 model files.(Not the content ,but just remove it from model library list).When i do ADE ->netlist and run and see the generated netlist the netlist still has 10 files insted of five files .ie even if i ,add model files or remove files from model library list via SKILL; am not seeing that impact in the generated netlist after i do ADE->netlist and run ..
OK. Understood. Can you share the SKILL code that is adding or deleting the model files? The problem could well be a consequence of how you are doing that - because doing this from the UI doesn't show this problem, and the UI is simply calling SKILL functions to achieve the same.