Things to be noted when you use read_spef for incremental timer invocation: What splice_driver() does is to isolate PIs from the circuit and insert new cells in the positions of PIs, named as PI_drv (e.g., p0001 with p0001_drv). Therefore, for any timing queries for a modified .spef after splice_driver(), any instances of PI pin in the modified .spef (if you're updating PI nets) should be replaced with PI_drv:o, while the keeping the same net names. I attached an example spef generated by the above method, based on superblue16.spef. http://cad-contest.el.cycu.edu.tw/problem_C/Benchmarks/superblue16_new.spef.gz Any netlist modification/read_spef before splice_driver() doesn't matter. The PI names are intact.