Re: save/restore
Hi Santhosh,
Very good explanation. There are couple of techniques used in SoC regressions.
1. Booting will be done and first testcase will be executed, after the first test finish the INITIAL STATE will be restored by function calls and second test would be executed. (INITIAL STATE here means before what was the STATE of that Particular IP, that will be restored, this is different than the normal RESET phase). This is successfully implemented in many companies.
Some secondary level test cases may affect the Boot Sequence itself, in these scenario, this technique is very much useful. Here the attention need to be given for the function calls for bringing-back of the initial states, otherwise there are chances of affecting some other IPs functionality.
2. Other is Save/Restore. Here Boot itself is a PHASE, then only Test Execution phase. This also a useful technique, but some of the Mobile Application testcases can affect Boot sequence/Interrupts (think such scenario comes in the 3rd Test case in a regression suite). So re-boot is required since time and disk space required more. Another problem we found with this method is "Tool Crashes" while saving the boot and starting test execution phase. (This is applicable with which tool and support provided by the EDA vendor)
Based on application we can choose which scenario is better/best.
-Paul